作者donnolove (啾咪^_<*)
看板AndroidDev
標題[問題] 關於MySql的update
時間Tue May 3 03:10:54 2011
開發層: (應用/框架/庫/核心)
MySql資料庫
問題:
目前在寫一支程式去select 跟 update
利用POST跟PHP來達到效果
select的部分已經ok了
但是在update的時候遇到了問題
PHP的部份:
mysql_query("UPDATE table SET value = '999' WHERE name = 'jack'");
在name的部分我用英文測試過是正常可以更新的
但是改成中文就沒辦法更新
有加 mysql_query("SET NAMES 'utf-8'");
目前還是解決不了
請各位前輩指點我一下
--
I 嘎丟 Message
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 180.218.214.232
1F:推 nvidia:欄位的語系呢? 05/03 07:42
2F:→ donnolove:utf8_unicode_ci 05/03 10:16
3F:推 cjoe:填寫時,那邊的編碼也是utf8嗎? error msg是什麼? 05/03 11:52
4F:推 cjoe:update的那個檔案也是utf8編碼嗎? 05/03 11:54
echo出來的訊息是 Resource id #3
後來google把php做一點修改
$result = mysql_query($sql,$con);
$rows = mysql_fetch_row($result);
echo "$rows[0]";//name
echo "$rows[1]";//age
接著 echo 出來都是空的
可是資料庫裡面是英文名字的話
是可以正常顯示
※ 編輯: donnolove 來自: 140.131.152.135 (05/03 12:01)
5F:→ donnolove:請問一下cjoe大 填寫是指哪個地方? 05/03 12:04
6F:→ jimwayne123:建議先開資料庫看一下寫進去的資料長什麼樣子.. 05/03 12:55
7F:→ donnolove:寫中文的資料進去變成亂碼 把亂碼echo出來是正常的 05/03 16:23
8F:推 cobrasgo:你是用什麼寫程式的?應該可以看到目前是什麼編碼 05/03 19:34
9F:→ cobrasgo:另外你"看到"result的介面是什麼?這些都要講清楚 05/03 19:35
php部份我是用記事本寫的,要做手機跟伺服器的中介
result介面是在手機端,ListView
手機<-->PHP<-->MySql
現在程式已經可以順利從手機端連到伺服器做資料存取的
把 mysql_query("SET NAMES 'utf-8'");
改成 mysql_query("SET NAMES 'utf8'"); 就能順利存中文資料進資料庫
可能是在debug的時候不小心加上去的樣子...
但是遇到一個問題就是select的時候 result的資料echo在網頁上依然是亂碼
後來發現可以不用管它...post回手機端會是正常的
>>在這邊卡很久 為了調整從資料庫撈回來的格式
所以我選擇先echo在網頁上 等確定之後才用模擬器上跑一次
所以遇到這樣子的問題
因為第一次寫php所以在SQL的部份卡很久
※ 編輯: donnolove 來自: 140.131.152.135 (05/03 20:13)
10F:推 doom3:熊熊以為我走錯版 05/03 20:04
11F:→ cobrasgo:where name = "jack" <---這個值是寫在php裡還是用抓的? 05/03 21:36
12F:推 lovelycateye:我猜你沒把網頁編碼設成utf8 05/03 21:43
13F:→ donnolove:我寫在php裡面測的 05/03 22:49
14F:→ donnolove:網頁編碼後來有設utf8 但是還是一樣 05/03 22:50
15F:→ donnolove:後來整個網頁重寫又OK了...所以不曉得哪出問題 05/03 22:50
16F:推 ted66:mysql_query ("SET CHARACTER SET 'utf8'") 05/05 16:59
17F:→ ted66:除了你那行我是又設定這行 存取都不會亂碼 SQL也正常 05/05 16:59
18F:→ donnolove:原來如此 謝謝t大分享 05/05 17:48