2012-06-04 99 views
0

可能重複:
charset issue with mysqlPHP /或MySQL搞亂了我的插入

所以我有了一些它這些字符的mysql的字符串:

, ? 「so」 'so' : ; ! @ # $ % ^ & * ( ) { } [ ] \ < > 。 / ` 〜 ¨ ° ¯ ¡ ¢ £ § ¸ '

當通過PHP命令mysql_query某些字符顯示不正確地插入到我的數據庫。例如,「so」變成「so」,但是,當我打印出查詢並在phpmyadmin中手動運行它時,它可以正常工作。將這些字符插入數據庫的正確方法是什麼,以便它們不會全部被破壞?

回答

2

使用此命令之前運行您的插入查詢:

mysql_query('SET NAMES utf8'); 
+0

當我看到這個時,我正要做出類似的提及。我同意,它是一個字符類型的問題。我會說他們可能與實體或類似的東西編碼。 – chris

0

你需要確保所有的這些字符在PHP中逃脫你送他們到MySQL之前。看到這個mysql-escape-string

這只是一個函數的例子。我相信還有其他的。