Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.78/55: Рейтинг темы: голосов - 55, средняя оценка - 4.78
4 / 5 / 4
Регистрация: 31.03.2015
Сообщений: 145

Вместо русских букв иероглифы

14.03.2016, 20:19. Показов 10928. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
После отправки формы с сайта, вместо русских букв в БД кракозябры. Соответственно и на сайт возвращаются кракозябры. Как это исправить?

Кодировка сервера: UTF-8 Unicode (utf8)
Сервер: Apache/2.2.31 (Win32)
Сопоставление кодировки соединения с MySQL: utf8_general_ci
На сайте <meta charset="utf-8">

Вставил в код character_set_name(); пишет, что кодировка utf8
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.03.2016, 20:19
Ответы с готовыми решениями:

вместо русских букв тире (-)
на сайте создаю новость после перехода в полную версию новости, в url вместо русских букв - тире причем тире стоит на месте пробелов ...

Квадратики вместо русских букв
Вот, что сделано: 1. Создана база данных (БД) в MySql 2. Создана таблица в этой БД 3. Создано несколько строк в таблице 4....

Знаки ? вместо русских букв в WAMP
На локальном wamp сервере в phpmyadmin по умолчанию устанавливается кодировка latin1_swedish_ci. Когда я меняю её на utf8_general_ci, а...

20
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,904
14.03.2016, 20:26
Проверьте кодировку таблицы и кодировку конкретно того поля (столбца), в котором лежат кракозябры. Возможно там закралась 1251.

Добавлено через 32 секунды
Ах да, и кодировку самого php-скрипта. Он также должен быть в utf8.
0
4 / 5 / 4
Регистрация: 31.03.2015
Сообщений: 145
14.03.2016, 20:58  [ТС]
Jodah, я думал, если кодировка сервера utf8, то и кодировка всей БД такая же. А как посмотреть кодировку таблицы и столбца в PHPMyAdmin?
0
 Аватар для Terintenos
0 / 0 / 0
Регистрация: 09.05.2015
Сообщений: 67
14.03.2016, 21:25
В сравнениях
Миниатюры
Вместо русских букв иероглифы  
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,904
14.03.2016, 22:04
Novichek_9I, нет, кодировка БД (по-умолчанию) такая, какая была указана при её создании. При создании таблицы можно кодировку поменять, как - выше показали. Добавлю, что надо затем тыкнуть "Структура" и проверить кодировку каждого столбца, она может отличаться от общей кодировки таблицы или БД.
1
4 / 5 / 4
Регистрация: 31.03.2015
Сообщений: 145
15.03.2016, 08:52  [ТС]
Jodah, в сравнениях везде utf8_general_ci

Добавлено через 6 минут
Что бы я не писал по-русски в поле формы, в БД всегда это отображается этими символами: &ETH;

Добавлено через 2 минуты
Кстати, у меня OpenServer стоит
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,904
15.03.2016, 09:13
Novichek_9I, а кодировку скрипта на utf8 меняли?
0
4 / 5 / 4
Регистрация: 31.03.2015
Сообщений: 145
15.03.2016, 09:27  [ТС]
Jodah, ну вот, я писал, что у меня в коде только <meta charset="utf-8">. Больше ничего нигде не указано.
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,904
15.03.2016, 09:30
Novichek_9I, нет, кодировку самого файла. Открываете файл через Notepad++, там Кодировки -> Преобразовать в UTF8 без BOM.
0
4 / 5 / 4
Регистрация: 31.03.2015
Сообщений: 145
15.03.2016, 09:42  [ТС]
мм, сейчас посмотрю. Я в Sublime Text делаю

Добавлено через 3 минуты
Открыл в Notepad, там кодировка стоит UTF8 без BOM
0
 Аватар для Terintenos
0 / 0 / 0
Регистрация: 09.05.2015
Сообщений: 67
15.03.2016, 09:43
Как вариант в .htaccess вписать AddDefaultCharset UTF-8 . Также посмотри при соединении с базой, чтоб было utf8, а не utf-8. Недавно был такой косяк.
0
4 / 5 / 4
Регистрация: 31.03.2015
Сообщений: 145
15.03.2016, 10:02  [ТС]
Terintenos, AddDefaultCharset UTF-8 вписан. В
PHP
1
2
$mysqli = mysqli_connect("server","username","password","nameBase");
        mysqli_set_charset($mysqli,'utf-8');
пробовал прописывать utf8 . Не помогает

Добавлено через 5 минут
Цитата Сообщение от Terintenos Посмотреть сообщение
Также посмотри при соединении с базой, чтоб было utf8, а не utf-8.
Как это посмотреть?
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,904
15.03.2016, 10:16
Цитата Сообщение от Novichek_9I Посмотреть сообщение
Как это посмотреть?
В функции mysqli_set_charset, которую вы привели чуть выше.
0
4 / 5 / 4
Регистрация: 31.03.2015
Сообщений: 145
15.03.2016, 10:28  [ТС]
Jodah, а, ну вот я написал, что указывал в ней и utf-8, и utf8. Может я саму функцию не там пишу.
Вот кусок кода:
PHP
1
2
3
4
$connection = new mysqli($dbhost, $dbuser, $dbpass, $dbname);
        mysqli_set_charset($connection,'utf8');         
 
    if ($connection->connect_error) die($connection->connect_error);
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,904
15.03.2016, 10:48
Novichek_9I, а почему mysqli_ функция, если вы в ООП стиле подключаетесь в базе?
PHP
1
$connection->set_charset('utf8');
2
4 / 5 / 4
Регистрация: 31.03.2015
Сообщений: 145
15.03.2016, 10:52  [ТС]
Jodah, исправил, но блин все равно в БД не по-русски
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,904
15.03.2016, 11:00
Novichek_9I, ну, магии не бывает, где-то указана неправильная кодировка. Надо продолжать поиски.
0
4 / 5 / 4
Регистрация: 31.03.2015
Сообщений: 145
15.03.2016, 11:09  [ТС]
Jodah, а почему, хоть что я напишу в поле, хоть "Вася", хоть "аофлаодфыоваофыало". В БД это все отображается в виде &ETH; . Может это что то значит
0
 Аватар для Terintenos
0 / 0 / 0
Регистрация: 09.05.2015
Сообщений: 67
15.03.2016, 13:21
Ну-с, есть 3 варианта:
1. Смени кодировку всех файлов на UTF8
2. Оставь $connection->set_charset('utf8');
3. В базе данных укажи везде также utf8 (general_ci, вроде)
Если у тебя на хостинге, так же посмотри, какое значение принимает сам домен (на некоторых хостингах встречал, что при создании базы/директории для домена нужно указывать кодировку. По дефолту она везде cp1251. Если не найдешь косяк, обратись в тех.подд хостинга, посмотри, что они ответят, если скажут, что проблема на твоей стороне (а так они обычно и говорят ), то действительно ищи еще глубже.

Помню была такая проблема, долго копался, в итоге проблема была на стороне хостинга.
0
4 / 5 / 4
Регистрация: 31.03.2015
Сообщений: 145
15.03.2016, 19:58  [ТС]
Terintenos, у меня локальный сервер. OpenServer.

Да я уже не знаю где копать.
1. Кодировку всех файлов проверил в Notepad, везде UTF8
2. $connection->set_charset('utf8');
3. В БД везде кодировка utf8, а сравнения utf8_general_ci
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.03.2016, 19:58
Помогаю со студенческими работами здесь

Кракозябры вместо русских букв в движке
Привет, подскажите пожалуста. Хотел установить движок Simple Quotes Engine. Импортировал бд, залил файлы, настроил кфг Захожу, а там...

Кракозябры вместо русских букв при выводе из БД
а как сделать чтобы русские слова выводились из бд? а то крякозябры получается

Вместо русских букв знаки вопроса при создании XML
Добрый день! В бд все таблицы в кодировке utf-8. при создании xml-файла посредством php вместо русских букв отображаются только знаки...

Вместо русских букв "??????" (вопросительные знаки)
В общеv установил &quot;aaкdvark topsites&quot;, кодировку mysql первоначально поставил cp1251 потом в установке выбрал русский язык, и все кроме...

PHP - "?" вместо русских букв
Есть проблема. Переносил бд с одного хостинга на другой. На первом все работало нормально. На втором вместо русских символов - вопросы. В...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru