Вставить в базу данных проблема ... (Плохое кодирование символов) PHP / MYSQL - PullRequest
3 голосов
/ 28 июля 2011

У меня есть форма, которая отправляется в базу данных MySQL.База данных установлена ​​в UTF-8_GENERAL, и строки также используют ту же кодировку символов.

Но когда я отправляю форму с "ő" или "ű" в тексте, она ничего не передаетпосле этих персонажей.(Пример: «Это хороший день». Он просто вставляет это в БД: «Это хороший»)

Страница проверки формы имеет mysql_real_escape_string ();strip_tags ();перед отправкой в ​​БД.

Как я мог решить эту проблему?Любая помощь приветствуется ...

1 Ответ

3 голосов
/ 28 июля 2011

Хорошо, что вы используете mysql_real_escape_string ()!

Я думаю, что проблема может заключаться в том, что на какой-то странице формы побочного шага -> заголовочный файл -> файл ядра -> файл макроса mysql -> вставкав БД и т. д. Если вы используете какой-либо метод CMS, конечно.

Итак, в основном:

  1. Убедитесь, что все ваши таблицы и ячейки в mysql имеют UTF8
  2. Добавьте это в свой макрос mysql или сразу после создания подключения mysql: mysql_query("SET NAMES utf8");
  3. Добавьте это в свой основной файл или вверху своей страницы php: Header("Content-Type: text/html; charset=UTF-8");
  4. ИКонечно, метатег, который устанавливает кодировку в файле html / template.

Если вы освоили эти шаги, это должно быть исправлено.Если нет, то, по крайней мере, вы устранили множество возможных проблем:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...