我正在菲律賓開展一個項目,很多人的名字中都有特殊的拉丁字符。西班牙字符沒有正確編碼
我有一個數據庫與latin1_swedish_ci整理拉丁文中的所有表設置。
+--------------------------+--------------------------------+
| Variable_name | Value |
+--------------------------+--------------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | C:\xampp\mysql\share\charsets\ |
+--------------------------+--------------------------------+
我的網頁標題聲明iso-8859-1作爲字符集。
例如,當我通過我的網絡表單提交包含代字符字符的員工姓名時,它會在我的表格中顯示爲'Marie Ca?on',並且在查看員工記錄時顯示在我的網頁上。
如果我將網頁編碼更改爲utf-8,它會正確顯示爲'MarieCañon'。所以,我假設我在我的latin1表中編碼UTF-8。但我很困惑那裏可能發生。
據我所知,PDO不處理編碼。我的網頁被宣佈爲iso-8859-1,所以我認定PHP不會導致問題。我的character_set_connection在MySQL中是latin1。
這可能發生在哪裏?
附加信息: 的Ubuntu 10.04.2 LTS 的MySQL 5.1.41-3ubuntu12.9日誌 PHP5:5.3.2 的Apache2:2.2.14
理想情況下,您將所有內容編碼爲UTF-8。使用Latin1會要求麻煩。 – tadman 2016-03-21 22:32:27