2013-04-05 6 views
0

Привет, ребята;PHP и MySQL кодирование UTF8

Мы возникли некоторые странные проблемы с кодировкой символов:

Мы используем Notepad ++ с UTF + 8 без BOM и передачи информации в базу данных (MySQL):

При установке: " análisis ", он вводит" análisis "

У любого есть представление о том, как это может произойти?

Заранее благодарен!

-

Edit: Если я вручную вставить информацию в таблицу MySQL, он правильно работает.

+0

Каков набор символов, который вы используете для поля, в которое вы вставляете эти данные? –

+0

Либо (1) вы не устанавливаете символ вашего соединения в MySQL на utf-8 (2), он фактически устанавливает правильное значение, но вы не смотрите в интерфейсе _showing_ он как utf-8 или (3) хорошо, где-то еще в цепочке вы забыли использовать utf-8. – Wrikken

+0

utf-8 @Mike Brant –

ответ

0

Попробуйте этот запрос:

SET NAMES utf8 

И отправить явные UTF8 заголовки:

header('Content-type: text/html; charset=utf-8'); 
+0

Не повезло :(Это PHP ... –

0

Вы будете n чтобы проверить кодировку символов столбца (который либо явно определен в столбце, либо использует значения по умолчанию для таблицы/базы данных). Также убедитесь, что никакие функции, кодирующие кодировку, не модифицируют строку перед вставкой.

0

Я думаю, что вам нужно обновить кодировку базы данных следующим образом:

ALTER DATABASE db_name DEFAULT CHARACTER SET 'utf8'; 

Я надеюсь, что это работает для Вас!

+0

Спасибо Мохамед Эльбо, кодировка базы данных работает исправно, это где-то не работает PHP. –

Смежные вопросы