|
Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » кодировака UTF-8 в XHTML, PostgreSQL |
|
|
кодировака UTF-8 в XHTML, PostgreSQL
|
Старожил Сообщения: 339 |
Профиль | Сайт | Отправить PM | Цитировать Web-приложение, страничка с формой для логина на XHTML 1.0 UTF-8, форма обрабатывается php скриптом, который сверяет
где $data[0] - (SELECT passwd FROM pg_shadow WHERE usename LIKE '$login'). База PostgreSQL - UTF8. Вобщем логина не получается. Раньше для логина пользователей заводил отдельные таблицы для пользователей и групп, сейчас хочу воспользоваться нативными средствами PostgreSQL... раньше работало, но раньше и странички и база были в KOI8... а тут такой гемор с кодировками при работе с XMLHttpRequest, что решил лучше уж сейчас на UTF-8 переходить, чем потом, когда приложение разрастётся... Скрипт login.php простейший (пока), выводит только md5 суммы. Для отладки стал выводить (echo) получившуюся md5 сумму и сумму, которую извлекаю из базы, на экране все сходится, только комментарии на русском языке - кракозябры... стоит в браузере поставить жестко UTF8 - сумма которую я вычисляю, в UTF-8 уже другая... а сумма, которую я извлекаю из базы остаётся без изменения при переключении кодировок в браузере (при переключении, на экране свой вид не меняет)... как я понимаю, $_POST['login'] и $_POST['password'] попадают в login.php в кодировке отличной от UTF-8... логичный вопрос, а почему? Фу, объяснил как мог... |
|
------- Отправлено: 12:49, 28-02-2007 |
Deadooshka Сообщения: 2511
|
Профиль | Отправить PM | Цитировать Demiurg а сам скрипт какую кодовую страницу использует? Все должно соответствовать...
|
Отправлено: 16:41, 28-02-2007 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 339
|
Профиль | Сайт | Отправить PM | Цитировать он никакую таблицу не использует, т.е. ни каких HTML заголовков в нем нет, но сама кодировка скрипта - UTF-8. После его исполнения браузер не знает кодировку документа, потому вывод (echo) - вместо русских букв кракозябры... а md5 суммы по внешнему виду совпадают, как только меняю в браузере на UTF-8, сразу видны русские буквы, а вид подсчитанной суммы изменяется (вид хеша из БД не изменяется)...
login.php без смены кодировки в браузере: ---кракозябры--- pass = md572c4bf92e86a141127e41e9ca1265a6f <- это сумма извлеченная из базы hash = md572c4bf92e86a141127e41e9ca1265a6f <- это подсчитанная md5 сумма Неверное имя пользователя или пароль. pass = md572c4bf92e86a141127e41e9ca1265a6f hash = md5d41d8cd98f00b204e9800998ecf8427e Пробовал в начале скрипта написать: безрезультатно. |
------- Отправлено: 17:04, 28-02-2007 | #3 |
Deadooshka Сообщения: 2511
|
Профиль | Отправить PM | Цитировать |
Отправлено: 17:30, 28-02-2007 | #4 |
Старожил Сообщения: 339
|
Профиль | Сайт | Отправить PM | Цитировать Цитата:
|
||
------- Отправлено: 19:27, 28-02-2007 | #5 |
Deadooshka Сообщения: 2511
|
Профиль | Отправить PM | Цитировать |
Отправлено: 20:48, 28-02-2007 | #6 |
just mar Сообщения: 3904
|
Профиль | Отправить PM | Цитировать ru_RU.UTF-8 - это для установки кодировок локали на unix-машине - к броузеру отношение явно не имеет
|
Отправлено: 13:24, 01-03-2007 | #7 |
Старожил Сообщения: 339
|
Профиль | Сайт | Отправить PM | Цитировать Пароль создавался в базе UTF-8 (у базы родная кодировка UTF-8), потому когда мы его извлекаем он уже в UTF-8; $_POST['login'] и $_POST['password'] приходят к нам со странички index.xhtml (которая в UTF-8)... неужели данные, которые мы вводим в форму, имеют кодировку локали ОС? (в случае с FreeBSD - это KOI8-R, Windows - cp1251)?
|
------- Отправлено: 17:22, 01-03-2007 | #8 |
Deadooshka Сообщения: 2511
|
Профиль | Отправить PM | Цитировать Demiurg не понятно... в какой кодировке слали свои пароли пользователи, когда регистрировались? KOI8? Тады и сравнивать надо предварительно перекодировав в KOI8... кодировка базы - дело десятое...
|
Отправлено: 19:32, 01-03-2007 | #9 |
Старожил Сообщения: 339
|
Профиль | Сайт | Отправить PM | Цитировать Sham Данные, которые мы вводим в форму, имеют кодировку локали ОС (вне зависимости от того какую кодировку имеет документ с формой)???
|
------- Отправлено: 12:28, 02-03-2007 | #10 |
|
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Верстка XHTML. Едет в Firefox. | Artem-Samsung | Вебмастеру | 2 | 13-12-2007 00:56 | |
Delphi - UTF-16 | papyc | Программирование и базы данных | 3 | 27-09-2007 13:21 | |
firefox и xhtml | Demiurg | Вебмастеру | 7 | 19-02-2007 12:09 | |
XHTML | Guest | Вебмастеру | 1 | 12-05-2004 00:04 | |
UTF | Ricardo013 | Программное обеспечение Linux и FreeBSD | 8 | 09-04-2004 12:10 |
|