Скрипт перекодирует сам?

  • Автор темы Автор темы Sergy
  • Дата начала Дата начала

Sergy

Guest
Скрипт перекодирует сам?

IIS, Win2000 XP Pro, MSSQL Server 2000
Проблема в следующем:
- читаю файл расположенный на сервере fread'ом (файл в кодировке x-cp866 (это точно)).
- делаю читаемым строкам convert_cyr_string ($str,'a','w')
- пишу в базу (или вывожу в браузер (экран), это несущественно)
Все работает, если я файл вызываю через браузер.

Если вызываю файл из консоли "cli\php.exe мой_файл" он выполняется, НО в базу (на экран консоли) выдаются крякозяблины... убираю convert... все работает из консоли, но не работает из браузера...

Где я торможу?
 
Если не делаю convert_cyr_string, то:

1.Читаю файл, вывожу в браузере, переключаю IE в кодировку "кирилица DOS" и вижу все в нормальной кодировке.
2.Этим же скриптом вывожу на консоль - все в нормальной кодировке.

Почему прежеде чем записать в базу, в первом случае я должен сделать convert_cyr_string, а во втором нет?
 
>Почему прежеде чем записать в базу, в первом случае я должен сделать
>convert_cyr_string, а во втором нет?
еще раз:
в браузере кодировка cp1251, в консоли - cp866.
 
Sergy
Да, да, да.
Я еще раз повторю: в браузере кодировка windows-1251, а в консоли cp866. Ферштейн? Но благодаря тому, что консоль может менять свою кодировку на лету это не проблема.
1) изменяем в консоли шрифт на юникодный (т.е. векторный)
2) выполняем комманду chcp 1251 там же
3) Радуемся полученному результату
 
Сверху