powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / PHP+ PostgreSQL+UTF8+Windows
5 сообщений из 5, страница 1 из 1
PHP+ PostgreSQL+UTF8+Windows
    #34303947
longmusic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую всех участников форума.

Только начинаю работать с PostgreSQL и сразу столкнулась с проблемой кодировки.
Просмотрела страницы форума по данному вопросу, но так и не смогла решить, что мне делать дальше.
А проблема моя состоит в следующем:

На машину клиента, где стоит Windows установила PostgreSQL 8.1. Все
шло прекрасно. Я отладила программы на PHP и подготовила базу данных для загрузки на
сервер. На сервере стоит FreeBSD. Сделала BACKUP из pgAdmina. При сливе базы на сервер операция RESTORE
спотыкалась на русских буквах и требовала кодировки UTF-8
(COPY failed: ERROR: invalid byte sequence for encoding "UTF8": 0xc032), т.е. такую, как на сервере.
Кодировку, если я поняла правильно (после нескольких неудачных попыток изменить ее из приложения на PHP),
менять можно только при инсталляции PostgreSQL, что я и сделала
задав при повторной инсталляции вместо кодировки SQL_ASCII кодировку UTF-8.
Проблемы с кодировкой на сервере прошли, но появились проблемы с Windows -
из программ на PHP я не могу обратиться к файлам
в системе Windows. На ум приходит следующее решение -
перед обращением к файлам перекодировать строку символов в Windows-1251, но может есть
какие-нибудь более интересные решения.

Если у кого-нибудь есть опыт в решении подобной проблемы.
Пожалуйста, поделитесь. Буду очень признательна.
...
Рейтинг: 0 / 0
PHP+ PostgreSQL+UTF8+Windows
    #34304122
Shweik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не могу понять, как изменения в конфиге постгреса повлияли на доступ к файлам из "программ на PHP"???

Лично мне удобнее на серверах(OC FreeBSD) данные хранить в KOI8-R
что и настоятельно советую всем остальным
а c клиента скрипт начинается со слов set client_encondig to "WIN";
И нет нужды заморачиваться перекодировкой в PHP-скрипте.
...
Рейтинг: 0 / 0
PHP+ PostgreSQL+UTF8+Windows
    #34304296
Jelis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У вас названия файлов храняться в базе, и проблеммы когда в пхп пытаетесь взять файл с именем файла из базы? Потому как иначе, в самом деле, что то совсем не понятно как может кодировка базы поломать доступ к файлам из пхп?!

Shweik
Лично мне удобнее на серверах(OC FreeBSD) данные хранить в KOI8-R
что и настоятельно советую всем остальным


Если толька не надо что б в базе хранились данные на разных языках, а не только на русском. Иначе без unicode почти что ни как :-)
...
Рейтинг: 0 / 0
PHP+ PostgreSQL+UTF8+Windows
    #34304584
romand
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так будет работать:

1. в php скриптах:
Код: plaintext
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
2. кодировка самих php скриптов utf-8
3. при создании базы:
Код: plaintext
1.
2.
3.
CREATE DATABASE foo
  WITH OWNER = postgres
  ENCODING = 'UTF8';
4. если при дальнейшей работе вылезет Error:header already sent
в php.ini установить:
output_buffering = 4096

Успехов!
...
Рейтинг: 0 / 0
PHP+ PostgreSQL+UTF8+Windows
    #34307421
longmusic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо всем за участие в моей проблеме.

Проблему с кодировкой, на сегодняшний день, я решила следующим образом:

1. Инсталлировала постгрес с кодировкой как на сервере, т.е. с UTF-8.
2. При обращении к файлам в программах на PHP использую функцию Encode. (нашла здесь -http://ru.php.net/manual/ru/function.convert-cyr-string.php).
3. Базу на сервере пополняю из приложения, изменив предварительно кодировку
txt - файлов на UTF-8.

Относительно использования charset=utf-8, это было первое, что я попыталась сделать, и у меня вышла ошибка, о которой вы упоминаете. О необходимых изменениях в конфиге я не знала
(спасибо за информацию). Но факт тот, что на сервере я не могу изменять конфиг, только у себя, на клиенте.
Еще раз большое спасибо всем за советы.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / PHP+ PostgreSQL+UTF8+Windows
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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