|
|
|
| Проблема в следующем:
Данные, получаемые при помощи запроса из MS SQL Server отображаются почему-то в кодировке DOS (866). Существует ли какой-нибудь способ изменить кодировку получаемых данных на Windows-1251 ? | |
|
|
|
|
|
|
|
|
для: codexomega
(02.11.2005 в 00:08)
| | Увы, но не помогло. И кстати у меня отображаются не знаки вопроса, а символы в кодировке DOS.
А на этот скрипт:
mssql_query ("set character_set_client = \'cp1251\'");
mssql_query ("set character_set_results = \'cp1251\'");
mssql_query ("set collation_connection = \'cp1251_general_ci\'");
|
выдаётся следующее:
Warning: mssql_query() [function.mssql-query]: message: Line 1: Incorrect syntax near '='. (severity 15) in z:\home\localhost\www\index.php on line 20
Ну и так далее........
Может MS SQL не поддерживает подобного рода запросы............ | |
|
|
|
|
|
|
|
для: Somnium
(03.11.2005 в 00:38)
| | Действительно, передо мной мелькнуло MySQL.
Обычно, данные в MS SQL SERVER содержатся в кодировке UNICODE. Так что проблем отображения в браузерах быть не должно. Тем не менее, есть некоторые несовместимости с PHP, который может неправильно отображать поля типа NVARCHAR и NTEXT.
Функции set character_set работают только для MYSQL.
Для MS SQL SERVER они вроде и не нужны.
А в какой кодировке у вас сама страница? | |
|
|
|
|
|
|
|
для: codexomega
(03.11.2005 в 06:53)
| | Страница в кодировке windows-1251.....
Но вот тут такой интересный момент наблюдается:
Отлаживая скрипт в "NuSphere phpED" полученные данные отображаются превосходно в кодировке windows, а вот скрипт, запущенный в обычном браузере, правильно отображаться не хочет. Я пробовал полностью заменять версию PHP, установленную на локальном сервере версией, установленной в NuSphere. В итоге никаких изменений......
В чём дело??? Ничего не пойму..... | |
|
|
|
|
|
|
|
для: Somnium
(05.11.2005 в 00:27)
| | Всё! Проблема решена.
Оказалось нужно было полазить в настройках SQL Servera:
"Client Network Utility" -> "DB-Library Options" -> "Automatic ANSI to OEM conversion" (Снять галочку) | |
|
|
|
|
|
|
|
для: Somnium
(05.11.2005 в 02:35)
| | Я только что нашел тот же самый ответ, хотел написать, но вы опередили. Да, пришлось попариться:)
Этот самый Client Network Utility запускается через Пуск->Программы->Microsoft SQL Server->Client Network Utility
А то будете искать неизвестно где:) | |
|
|
|