MySQL и utf8 в stored procedure
От: danclax  
Дата: 10.08.09 08:42
Оценка:
Всем привет,

Столкнулся с такой проблемой. На первый взгляд избитая тема — символы вопросов в БД вместо русских букв. Но ситуация немного другая.
В БД использую utf8. Из PHP после подключения отправляю SET NAMES 'utf8'. На всякий случай вот:


// Установка соединения
$link = mysqli_init();

if (!$link)
    die('Failed to init mysqli');

$res = @mysqli_real_connect($link, DB_HOST, DB_LOGIN, DB_PASS, DB_NAME);
if (!$res)
    die("Failed to connect to the mysql server: ".mysqli_connect_error());

if (!mysqli_query($link, "SET NAMES 'utf8'"))
    die("Can't execute query: ".mysqli_error($link));


Все ок, из PHP отправляю запросы и русский текст в БД сохраняется корректно, а также с отображением на странице никаких проблем. На странице тоже кодировка utf8, и сами скрипты php сохранены как utf8 w/o BOM.

Когда я передаю в хранимую процедуру текст в качестве параметра, она пишет его в поле таблицы. И в этом случае:


Что можно попробовать здесь? Хотелось бы без лишних наворотов, попроще.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.