MySQL - русские символы отображаются неявно

Мне нужно сделать русскую версию веб-сайта, но я не могу узнать, как вставить русские символы в базу данных.

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

???????? ?????????? ??????? ??????? ? ????? ?? ????????????? ? ???????, ??????? ????? ??????? ???????? ????? .??? ??????????? ???????? ????? ?? ????? ?????????? ? ????? ????????.
??????????? ?????? ?? ???????? ????? ?? 20 ???????. ???????? ??? ?? ??????????? ?????????????? ????? ? ????????????? ??????? ??????. ? ???????, ? ??????? ? ?.?. 

Ответ 1

  1. Убедитесь, что база данных charset/collation UTF-8
  2. На странице, в которую вы вставляете эти русские символы (форма textarea), убедитесь, что кодировка UTF-8, установив Content-Type в text/html; charset=utf-8 text/html; charset=utf-8. Введите текст на русском языке непосредственно в форму ввода.
  3. На странице обработки, которая обрабатывает эту форму и вставляет ее в базу данных, убедитесь, что вы сделали SET NAMES utf8 чтобы она сохранялась как UTF-8, прежде чем вставлять данные, в отдельном запросе заранее.
  4. Когда вы визуализируете контент из базы данных в представлении, убедитесь, что Content-Type имеет Content-Type text/html; charset=utf-8 text/html; charset=utf-8.

Убедитесь, что тип содержимого не windows-1251 или iso-8859-1/latin1. Убедитесь, что база данных charset/collation НЕ ISO-8859-1/Latin1.

Ответ 2

Для хранения русских символов в БД ваш БД должен поддерживать кодировку UTF-8. Измените таблицу с помощью запроса ниже, чтобы включить кодировку UTF-8.

ALTER TABLE t1 CONVERT TO CHARACTER SET utf8