Страница 1 из 1

Кракозябы в БД

Добавлено: 23 фев 2013, 20:09
losy
Здравствуйте,
Сегодня впервые скачал и установил Open Server v4.7.7, все в нем очень нравится, и настройки и меню и расширения отличные и GUI-интерфейс продуман и интуитивно понятен, одни позитивы, до этого пользовался Денвером и конечно же руки зачесались попробывать ваш продукт, потому быстренько написал десяток строк чтобы проверить Open Server v4.7.7 (...кстати очень понравился редактор Sublime Text 2, просто отличая вещь! Достойная замена Notepad++)
Проблема вот какая: вставленные php-скриптом в БД данные, при просмотре полей таблицы через phpMyadmin отображаются в виде кракозябов (смотрим скрин), форма отправляет данные в кодировке utf-8, обрабатывающий скрипт тоже вставляет данные в БД в кодировке utf-8,в самой БД указана кодировка utf8_general_ci, php-скрипт выводит записи в браузер в кодировке utf-8 и отображаются они при этом в нормальном виде, в phpMyadmin тоже указана кодировка utf-8 и весь интерфейс phpMyadmin при этом нормально отображает кирилицу а сами долбаные записи в кракозябах!?
Скрин:
Изображение

Помогите пожалуйста решить проблему...
...в настройках пробывал ставить кодировку utf-8 вместо "не задано" - не помогает...

Добавлено: 23 фев 2013, 20:15
duxabilii
Попробую угадать: вы используете имя пользователя root с пустым паролем?

Добавлено: 23 фев 2013, 20:17
losy
duxabilii писал(а):Попробую угадать: вы используете имя пользователя root с пустым паролем?
Да, и как это влияет на кодировку?

Добавлено: 23 фев 2013, 20:19
duxabilii
Попробуйте пользователя mysql и пароль mysql

Почитайте руководство, раздел "Работа с БД", а потом внимательно посмотрите в PHPMyAdmin на права пользователей.

Добавлено: 23 фев 2013, 20:23
losy
duxabilii писал(а):Попробую угадать: вы используете имя пользователя root с пустым паролем?
То есть если я создам пользователя с паролем и со всеми правами на конкретную БД и буду использовать его в скрипте для конекта к MySQL то все будет отображатся нормально?

Добавлено: 23 фев 2013, 20:26
duxabilii
Вот это главная фраза
Внимание! В том случае, если помимо прочих привилегий для пользователя будет отмечена привилегия SUPER, то кодировка, установленная по умолчанию в настройках MySQL сервера, не будет на него действовать. Кодировку нужно будет указывать в ваших скриптах персонально для каждого подключения к MySQL, потому отмечать привилегию SUPER не рекомендуется.
Добавлено спустя 1 минуту 56 секунд:
Вот еще выдержка из руководства http://clip2net.com/s/2RUbs
Можете схлопотать за невнимательное прочтение руководства ;)

Добавлено: 23 фев 2013, 20:27
losy
duxabilii писал(а):Вот это главная фраза
Спасибо за ученье, усвоил буду пробывать...

Добавлено: 23 фев 2013, 20:28
Максим
losy писал(а):
duxabilii писал(а):Попробую угадать: вы используете имя пользователя root с пустым паролем?
То есть если я создам пользователя с паролем и со всеми правами на конкретную БД и буду использовать его в скрипте для конекта к MySQL то все будет отображатся нормально?
А если ещё в скрипте после установки соединения будете указывать правильную кодировку, а так же создадите базу в нужной кодировке, то да, всё будет нормально.

Добавлено: 23 фев 2013, 21:08
losy
Максим писал(а):А если ещё в скрипте после установки соединения будете указывать правильную кодировку, а так же создадите базу в нужной кодировке, то да, всё будет нормально.
Создал юзера с паролем, дал для нужной БД соответствующие права, указал в скрипте после выбора базы нужную кодировку: mysql_set_charset('utf8'); и все отлично отображается, спасибо за науку. :oops:

Ворос решен, можно тему закрывать...