Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Apache 1.3.29 PHP, FreeTDS, MS SQL 2000, Linux 9, Кириллица / 4 сообщений из 4, страница 1 из 1
09.02.2004, 17:36
    #32403237
krl
krl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Apache 1.3.29 PHP, FreeTDS, MS SQL 2000, Linux 9, Кириллица
Hi, All!

Дано:
ASP Linux 9, кодовая страница по умолчанию WIN1251
Установлен Apache 1.3.29, PHP 4.3.4, FreeTDS 0.62.1

На другом компьютере под MS Windows 2000 Server Eng установлен MS SQL Server 2000 Enterprise Edition.

В базе данных, настроенной в режиме COLLATE SQL_Latin1_General_CP1251_CI_AS,
хранятся данные на русском языке.

В Windows-клиентах все нормально добавляется и изменяется. А если я соединяюсь с БД через Web (означенную выше конфигурацию), то запрос SELECT выдает нормальную информацю. А если я добавляю запись командой

$sql = "INSERT INTO temp1 values ('Фамилия')";
$result_ = mssql_query($sql);

то в базе данных вместо "Фамилия" получаю "Oaieeey".

Настройками freetds.conf игрался. Сейчас такие:
=================================================
[MyServer2k]
host = x.x.x.x
port = 1433
tds version = 7.0
client charset = CP1251
==================================================
Но я пробовал и WINDOWS-1251, и протокол версии 8. Пробовал вообще не указывать параметров. Результат одинаков - см. выше.

Кто-нибудь сталкивался с этим ранее? Как решать проблему?

Заранее спасибо.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
24.03.2005, 15:53
    #32978987
newb1e
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Apache 1.3.29 PHP, FreeTDS, MS SQL 2000, Linux 9, Кириллица
в связке php - unixODBC - freetds - MS SQL 2000 EE

C такими настройками в freetds.conf
#-----------------------------------------
[192.168.0.100]
host = 192.168.0.100
port = 1433
tds version = 8.0
client charset = cp1251
#-----------------------------------------

Все нормально, туда суда перекодируеться.

me[at]newbie.ru
.
...
Рейтинг: 0 / 0
24.03.2005, 15:57
    #32979001
newb1e
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Apache 1.3.29 PHP, FreeTDS, MS SQL 2000, Linux 9, Кириллица
PS:
Fedore Core 2
php-4.3.10-3.2
freetds-0.62.1-1
unixODBC-2.2.8-5
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
11.10.2010, 18:56
    #36893337
demount
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Apache 1.3.29 PHP, FreeTDS, MS SQL 2000, Linux 9, Кириллица
некропостинг конечно, но может кому поможет:
если кириллица в выдаче отображается вопросительными "???" знаками, значит не учитывается конфига freetds.conf а соответственно и client charset . Лечится указанием для unixodbc читать настройки сервера из этого файла: ServerName = [server_name_from_freetds_conf] . - Либо в odbc.ini, либо непосредственно указываться эту директиву в строке соединения в php .
...
Рейтинг: 0 / 0
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Apache 1.3.29 PHP, FreeTDS, MS SQL 2000, Linux 9, Кириллица / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]