所以我有一個'utf8_general_ci'表具有相同的字段。MySql/php utf8似乎沒有正確工作
我無法獲得任何utf8字符,它們都顯示爲'????' ,然後我將表更改爲'MyISAM',現在我可以從PhpMyAdmin插入utf8數據(第一次發生這種情況)。
但它仍然不能從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文件使用UTF-8。 默認情況下,它是別的東西,我使用Wamp服務器,它一直在沒有額外的配置,但在這種情況下不工作。
character-set-server=utf8
collation-server=utf8_general_ci
['SET NAMES'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