[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: PHP + MySQL и "š" , "Š", "ž", "Ž"
logic
Всем привет,

ребят столкнулся с такой нелепой проблемой,

при регистрации пользователь указывает имя и фамилию на латинице, в некоторых фамилиях встречаются буквы "š" , "Š", "ž", "Ž" ...т.к. это ограниченный круг пользователей, то я решил в ручную подредактировать несоклько имен в Б. Теперь в основной таблице после редакции руками, все нормально, кодировка столбца с фамилией установлена на utf8_unicode_ci. Но при регистрации нового пользователя, например с именем (Šackih Žutkih) вот что добавляется в БД Ðackih Þutkih. Ну я мог бы поправить руками, но далее я делаю много операций с этой таблицей, и эти буквы обратно потом превращаются в ...... Вообщем понимаю, что проблема в кодировке, но в каком месте не могу понять. На странице регистрации стоит charset=Windows-1257 (балтийская), при этом имена вроде Ämer Künzer добавляются и оперируются отлично. Другими словами проблемы только с "š" , "Š", "ž", "Ž".

Спасибо



Спустя 1 час, 1 минута, 53 секунды (15.03.2011 - 14:52) imbalance_hero написал(а):
logic
пользуйся кодировкой utf-8, в ней меньше всего проблем

Спустя 23 минуты, 35 секунд (15.03.2011 - 15:16) Trianon написал(а):
То есть при соединении с БД Вы ставите кодировку windows-1257?
И соответственно, сейчас у Вас постоянно идет преобразование utf-8 - windows-1257 .
Вероятно, в следствие этого данные и меняются.
А полностью уйти в сторону utf-8 никак нельзя?


Спустя 1 день, 56 минут, 10 секунд (16.03.2011 - 16:12) logic написал(а):
Всем привет,
спасибо за быстрые ответы, вчера на радостях, после первого ответа ушел в ПХП ))

да конечно все решилось путем выставления в документах charset=utf и в phpmyadmin в таблицах utf8 unicode. Т.к. если ставил в html документах utf-8 то все-равно возникали проблемы.

Trianon да именно так и было smile.gif

спасибо за помощь!

Спустя 7 дней, 19 часов, 33 минуты, 26 секунд (24.03.2011 - 11:46) logic написал(а):
Всем привет ещё раз, все таки до сих пор осталась эта проблема.

1) на странице прописана кодировка: charset=utf , на этой же странице есть запрос к БД (выбирает данные и показывает их на странице). Тадблица в БД хранится в кодировке utf8_unicode_ci.

Если я ставлю на странице charset=utf-8 или 16, то буквы "š" , "Š", "ž", "Ž" которые приходят из запроса к БД не показывает корректно, но зато обычный текст страныцы с буквами ä,ü,ö корректен , если же обратно меняю на charset=utf, то всё ок становится с запросами из БД, но теперь кривой обычный текст страницы... в phpmyadmin кодировку просто UTF мне обнаружить не удалось, скорее всего проблема где то здесь то что на странице стоит utf а в БД utf8?

Спасибо

Спустя 6 часов, 24 минуты, 41 секунда (24.03.2011 - 18:10) Ser18 написал(а):
"š" , "Š", "ž", "Ž" Как вы эти буквы печатали?

Возможно сами эти буквы напечатаны в другой кодировке

Спустя 1 час, 6 минут, 16 секунд (24.03.2011 - 19:16) Trianon написал(а):
1. нет такой кодировки, как "просто utf"
utf - целое семейство кодировок, отличающихся друг от друга весьма существенно.

2. Кодировка utf-8 (которая именно так и называется в принципе, и именно с таким названием фигурирует в значении атрибута charset поля Content-Type: text/html , в терминах СУБД MySQL тем не менее называется utf8 .

Спустя 16 часов, 40 минут, 12 секунд (25.03.2011 - 11:57) logic написал(а):
Ser18
Trianon

Всё ребят справились wink.gif, спасибо огромное.
На странице регистрации, стояла кодировка просто utf - как сказал трианон такого не существует, я поменял на charset=utf-32 , и на странице где делаются запросы(про то что я српашивал в "24.03.2011 - 08:46" выставил charset=utf-32 , в БД все сделанно было давно в utf8_unicode_ci . Теперь все работает как надо, ä,ö,ü,ž,š,a отпечатываются как надо, и в БД все отлично !

Спасибо rolleyes.gif
как наберу 10, так вернусь поблагодарю smile.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.