|
|
|
| Народ, у меня такая проблема.
Мне надо сделать интернет магазин. Тестирую его на удалённом сервере.
Когда подключаюсь к базе данных(ORACLE), у меня страницы выводятся в кодировке UTF-8.
Нужно поставить windows-1251. Никак не могу это сделать. Перепробовал всё: meta, header,
даже вручную не получается выставить через explorer.
Использую PHP, и SQL. Помогите плиз...Скоро сдавать курсовик надо...аааааааааааааааа!!!! | |
|
|
|
|
|
|
|
для: kletter
(21.05.2006 в 00:22)
| | После соединения и выбора базы добавь это
должно помоч
<?php
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
?>
|
| |
|
|
|
|
|
|
|
для: himic
(21.05.2006 в 07:58)
| | Неужели с сервером Oracle можно работать через MySql-клиент?
to kletter: Дальнейшие действия зависят от того, каким интерфейсом Вы пользуетесь, и от версии сервера, с которым соединяетесь...
Например, у функции oci_connect имеется 4-й параметр charset, который управляет кодировкой соединения с сервером Oracle 9.2 и выше. | |
|
|
|
|
|
|
|
для: Trianon
(21.05.2006 в 09:36)
| | Я общаюсь с сервером через написанную мной форму, в скрипте которой выполняются запросы. Самое обидное - это то, что в моём распоряжении не MySQL, а просто SQL. И я не знаю, как там изменить кодировку. Страница index.php выводится нормально (ради эксперимента я вывожу все записи книг из таблицы). А вот если я перехожу на другую страницу с абсолютно таким же кодом по адресу /Guest/Genres/Computers.php то ставится принудительно кодировка UTF-8. И что ещё более непонятно, если я переименовываю файл Computers.php в index.php, то всё нормально.............???.................
На сервере стоит PHP 4.1, ORACLE 9.1(вроде бы). | |
|
|
|
|
|
|
|
для: kletter
(21.05.2006 в 13:15)
| | Народ, вот что я узнал об установках на сервере:
Executing command: select * from nls_database_parameters
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_CURRENCY $
NLS_ISO_CURRENCY AMERICA
NLS_NUMERIC_CHARACTERS .,
NLS_CHARACTERSET CL8KOI8R
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD-MON-RR
NLS_DATE_LANGUAGE AMERICAN
NLS_SORT BINARY
NLS_TIME_FORMAT HH.MI.SSXFF AM
NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
NLS_DUAL_CURRENCY $
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE
NLS_NCHAR_CHARACTERSET UTF8
NLS_RDBMS_VERSION 9.2.0.6.0
Вот у них и стоит UTF8 в предпоследней строке. Вероятно это из за этого у меня ставится UTF8.
Теперь такой вопрос: можно каким либо образом конвертировать все что идёт из базы данных в нужную кодировку? (изменять парамерты NLS я не могу, нет прав). Iconv не работает, видимо он там не установлен.
Или как нибудь сказать серверу, что бы он мне выводил в 1251? | |
|
|
|
|
|
|
|
для: Trianon
(21.05.2006 в 09:36)
| | >Неужели с сервером Oracle можно работать через MySql-клиент?
>
>to kletter: Дальнейшие действия зависят от того,
>каким интерфейсом Вы пользуетесь, и от версии сервера, с
>которым соединяетесь...
>Например, у функции oci_connect имеется 4-й параметр
>charset, который управляет кодировкой соединения с сервером
>Oracle 9.2 и выше.
К сожалению я не могу использовать четвёртый параметр, т.к. версия ORACLE 9.1, а для этого тербуется как минимум 9.2 | |
|
|
|
|
|
|
|
для: kletter
(21.05.2006 в 15:37)
| | У меня все- таки главный вопрос:
Какого хрена ORACLE мне выставляет UTF8 так, что я не могу её поменять, и как это можно обойти? | |
|
|
|