понедельник, ноября 19, 2007

Буква Р, php, mysql, utf.

Начало: пару месяцев назад когда создавал базку на хостинге для Осторожно модерн, удивился что текст вбитый через форму на сайте (в utf8), заносится в базку в виде кракозябр, хотя кодировка в базке и в форме и вообще где только можно была utf8. Значения этому не придал ибо данные считанные из базы отображались на сайте нормально.

Проблема: но пришло время ввести в базку фамилию "Рылов", неожиданно на выходе вместо заглавной буквы Р меня ожидал черный ромбик с вопросиком внутри и пробел. Четыре часа я менял скрипт, кодировки utf и сёрфил в поиске решения проблемы. Привлечение коллег тож не помогло. :)

Решение: но я обратилсо к Вове и что выянилось, сцука php некорректно работает на utf с mysql, и первым запросом после коннекта достаточно поставить запрос к базке: "SET NAMES utf8".