1.PHP是PHP表單 SEND到2.PHP
2.PHP是寫INSERT INTO的
XXX.PHP是連接資料庫用
在2.PHP中會使用include XXX.PHP
1.PHP會SEND資料到2.PHP
1.PHP上是UTF8
2.PHP也是UTF8 加上mysql_query("SET NAMES 'utf8'");
XXX.PHP也是加上mysql_query("SET NAMES 'utf8'");
PHPMYADMIN是選擇UTF8_UNICODE_CI
SQL檔案也是UTF8格式 上傳也是以UTF8上傳
SQL 的TABLE 欄位的屬性也都改成UTF8_UNICODE_CI
SQL連線模式也是UTF8
校對也是UTF8
YAHOO跟GOOGLE前三大頁面的關鍵字"PHP 資料庫 寫入 亂碼"搜尋結果都被我翻片了 也照做
依然
還是亂碼...........
救命阿......................
甚至我把2.PHP跟XXX.PHP加上
mysql_query("set names 'charset'");
mysql_query("SET NAMES utf8");
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER_SET_CLIENT='utf8'");
mysql_query("SET CHARACTER_SET_RESULTS='utf8'");
依然.............
PS 付費主機
mypeter0604 wrote:
放上客服回覆
If your SQL does not support Chinese characters you may be using latin encoding. It would be best to change your tables character encoding to utf8. This is a universal encoding type and should support Chinese characters.
試著翻譯如下:
如果你的SQL不支援中文字元你可改使用拉丁編碼.最好的方式是將你的資料表字元編碼改成UTF8.應該就能支援中文字.
簡單的說就是把SQL的cHARACTER-SET改成UTF8.但樓主已改成UTF8了不是嗎?
=>進phpmyadmin找到可輸入 sql query的畫面,然後鍵入:
show variables like '%character%';
這句話會顯示目前資料庫使用的語系設定,一般國外的網站或剛裝好的 mysql 4.1預設都是 latin-1。
mysql 會出現中文亂碼的原因不外乎下列幾點:
1. mysql server本身設定問題,例如還停留在 latin1
2. mysql table 的語系設定問題(包含 character 與 collation)
3. 客戶端程式(例如 php) 的連線語系設定問題
============================
phpmyadmin
charset 請選擇 UTF-8 Unicode (utf8)
collation 請選擇 utf8_general_ci (ci 代表 case insensitve 大小寫沒差)
1、mysql 啟動時會讀取一個預設的 config 檔,一般名稱為 my.ini,而它會到下列兩位置去尋找這個檔案:
C:windowsmy.ini 也就是作業系統的安裝目錄,也有可能是 C:winntmy.ini
C::my.cnf 也就是 C disk 的根目錄
2、my.ini 裏的內容為:
[mysqld]
default-character-set=utf8
[client]
default-character-set=utf8
init_c
其中 mysqld 是指定 server 啟動時要用的語系,但如果這裏設定為 utf8 可能會讓許多英文軟體不開心,例如 osCommerce/mediaWiki/wordpress/drupal/gregarius,所以這裏建議設成 latin1。要使用utf8中文的人,只要記得建資料庫時將它設成utf8,讓中文程式正確的使用 utf8 與它溝通即可。
另外樓主的程式碼有點奇怪
SQL 的TABLE 欄位的屬性也都改成UTF8_UNICODE_CI
=>應該是utf8_general_ci (ci 代表 case insensitve 大小寫沒差)吧




























































































