Акценты "é, è ... etc" отображаются неправильно - PullRequest
0 голосов
/ 02 апреля 2012

Я использую PDO для выполнения запросов в PHP.Проблема заключается в том, что при добавлении символов с акцентом ("é", "è", "ô" и т. Д.) Через phpMyAdmin и извлечении его в PHP он отображает странные символы.Когда акцент добавляется с помощью запроса, он сохраняется как странный символ («é» будет «Ã ©»), но отображается правильно.

Кодировка, которую я использую в MySQL, - utf8_general_ci.Моя кодировка PHP установлена ​​в UTF-8 (без спецификации).Когда я выполняю запрос вроде:

SELECT ... WHERE DataName LIKE '%é%' ...

, он не работает, если данные были добавлены через phpMyAdmin и не установлены в 'Ã ©.

Я бы хотелзнать, как заставить это работать, даже когда мы добавляем данные через phpMyAdmin и отображаются как «é» в phpMyAdmin.

Ответы [ 2 ]

0 голосов
/ 07 января 2015

У меня была такая же проблема.Мой пакетный файл инициализировал таблицу ввода слов с ударением, но мой phpmyadmin показал странную фигуру.Но когда я изменил его в phpmyadmin, он был сохранен правильно, и когда я экспортировал в пакет, он также был корректным (тот же пакет, в котором была загружена странная фигура), я столкнулся с проблемой, когда использовал редактор Jedit вместо Блокнота.По какой-то причине Блокнот преобразует странную фигуру в акцент.Зная эту проблему, решение было простым:
1- Создано базой данных с использованием латиницы 1:
DROP DATABASE IF EXISTS mydb;
СОЗДАТЬ БАЗУ ДАННЫХ mydb УСТАНОВКА ПО УМОЛЧАНИЮ ПО УМОЛЧАНИЮ latin1 COLLATE latin1_swedish_ci;
2 - проверил пакетные файлы для ввода правильного акцента
3 - использовал обычное объявление в заголовке html: META charset = "utf-8"

0 голосов
/ 02 апреля 2012

Убедитесь, что вы установили UTF8 для всех соединений между PDO и MySQL

$handle = new PDO("mysql:host=localhost;dbname=dbname", 
    'username', 'password',  
    array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...