作者buganini (霸格尼尼)
看板PHP
標題Re: [請益] 網頁改UTF8 MYSQL改UTF8卻亂碼 (附圖)
時間Sat Oct 9 14:20:26 2010
※ 引述《kingmin (高手)》之銘言:
: 這是我的phpMyAdmin畫面
: http://img543.imageshack.us/img543/5405/20101009120719.jpg
: 這是我的資料表
: http://img269.imageshack.us/img269/3784/20101009120743.jpg
: 這是我的資料表裡的結構
: http://img704.imageshack.us/img704/3241/20101009120809.jpg
: 我PHP已全部改成utf8並設定無BOM
: PHP裡面也有加入了mysql_query("SET NAMES 'utf8'");
: 請問現在PHP從 因該是BIG5的 MYSQL裡取出的資料會變成亂碼
應
那怎麼charset/collation全都是utf-8 ?
: 不過我測試
: INSERT INTO `search` (`ip` ,`name` ,`time` ,`code` )VALUES ('127.0.0.1',
: 'Guest' , 1286598087 , '中文測是' );
試
: 從phpMyAdmin裡看到的是中文
: 所以顯示出網頁也是中文沒問題
: 請問如果我想把資料庫改用UTF8
(A)
如果你用phpmyadmin看資料庫內容都正確的話
沒意外的話應該本來就是囉
: 並且用CurlRequest從外部更新資料庫的資料
: 可是資料庫裡中文都不見了 變成是空的
: 如果PHP裡面改成mysql_query("SET NAMES 'big5'");
: 在從外部更新資料庫的資料 在從phpMyAdmin裡看到的就是中文
這樣看起來是資料庫存UTF-8, 網頁用Big5
: 不過PHP上看到的就變成亂碼了???
: 請問如何設定才能存入資料是BIG5 取出資料是UTF8
有這個必要嗎? 為什麼還要用Big5 ?
除非你的資料庫要跟別人的程式共用
如果是這樣的話那之後再說
可是怎麼跟(A)那邊的說法不同??
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.135.231.23
※ 編輯: buganini 來自: 220.135.231.23 (10/09 14:22)
1F:→ buganini:還是我誤解你的語意了XD 10/09 14:23
2F:→ buganini:所以你究竟是資料庫/網頁要用什麼編碼呢? 10/09 14:27
※ 編輯: buganini 來自: 220.135.231.23 (10/09 14:29)
3F:推 kingmin:我如果可以當然想把資料庫/網頁都是UFT8 10/09 16:12
4F:→ kingmin:我目前網頁已經都是UTF8因該是沒問題的 10/09 16:14
5F:→ kingmin:只是我PHP用CurlRequest從外部更新資料庫的資料 10/09 16:15
6F:→ kingmin:他沒辦法存成UTF8 難道只能存成BIG5 10/09 16:16
7F:→ kingmin:還是說哪裡沒設定到呢??? 10/09 16:16
8F:推 SmallBeeWayn:SET NAMES 最好跟著connect之後喔 10/09 18:04
9F:→ SmallBeeWayn:我覺得應該是你的架構或是CurlRequest有問題 10/09 18:05
10F:→ SmallBeeWayn:有地方把MySQL reconnect卻沒有SET NAMES 10/09 18:05
11F:→ SmallBeeWayn:另外去phpMyAdmin首頁-資訊 確認所有character都utf8 10/09 18:06
12F:推 kingmin:所有都設UTF8 且SET NAMES 也是跟著connect之後 還是不行. 10/09 19:24
13F:→ kingmin:用CurlRequest取得的資料 echo()輸出都是一樣的內容 10/09 19:26
14F:→ kingmin:不過SET NAMES UTF8時 用phpMyAdmin看是沒有內容 10/09 19:27
15F:→ kingmin:不過SET NAMES big5時 用phpMyAdmin看內容是中文 沒有亂碼 10/09 19:28
16F:推 SmallBeeWayn:你確定不是CurlRequest的問題? 10/09 23:45
17F:→ buganini:看起來是你curlrequest送進去的資料是big5 10/10 16:21
18F:→ buganini:"echo()輸出都是一樣的內容" 這句我看不懂 10/10 16:27
19F:→ buganini:是說跟你直接去看得一樣? 那你確定編碼是utf-8嗎? 10/10 16:28
20F:推 kingmin:echo()輸出 就是從網頁上看到的內容是一模一樣的 10/10 20:44