Итак, у меня есть таблица, которая является «utf8_general_ci» с теми же полями.MySql/php utf8, похоже, не работает правильно
Я не мог получить в нем никаких символов utf8, все они отображались как «????» , затем я заменил таблицу на «MyISAM», и теперь я могу вставить данные utf8 из PhpMyAdmin (первый раз что-то подобное происходит).
Но он все еще не работает со стороны PHP. Когда я вставляю «āāā», он отображается как «???», но странная часть, если я вставляю «žžžēēē», он отображается как «žžž ???» поэтому работают некоторые символы utf8? PHP файл UTF-8
CREATE TABLE IF NOT EXISTS `company` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(100) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci AUTO_INCREMENT=5 ;
$dbConnection = mysql_connect("localhost","*****","*****");
mysql_query("SET NAMES 'utf8'", $dbConnection);
mysql_query("SET CHARACTER SET 'utf8'", $dbConnection);
mysql_select_db('cherrysystem', $dbConnection);
mysql_query("INSERT INTO `company` (`title`) VALUES ('āāčč')",$dbConnection);
ПОСТАНОВИЛИ
Итак, проблема в моем случае было то, что я должен был установить MySql INI файл использовать utf8. По умолчанию это было что-то еще, я использую Wamp-сервер, и он всегда работал без дополнительной настройки, но не в этом случае.
character-set-server=utf8
collation-server=utf8_general_ci
Как насчет ['УСТАНОВИТЬ НАЗЫВЫ 'utf8''] (http://dev.mysql.com/doc/refman/5.0/en/charset-connection.html)? – Alexander
mysql_query ("SET NAMES 'utf8'", $ dbConnection); mysql_query ("SET CHARACTER SET 'utf8'", $ dbConnection); – somerandomusername
Вы знаете, что можете отредактировать свой вопрос, верно? – Alexander