php select查詢時,字元編碼處置

來源:互聯網
上載者:User
php select查詢時,字元編碼處理,
require("db.php");
$sql="SELECT `cityid` FROM `weathercityid` where `city`='廣東'";
$result=mysql_query($sql);
var_dump($result);
$a_city=mysql_fetch_array($result);
print_r($a_city);
?>
輸出結果為
廣東
resource(5, mysql result)

如果把 把廣東換成是 數字是字元就可以成功,這個是怎麼回事? select iconv

分享到: 更多


------解決方案--------------------
你的程式是什麼編碼的?
你的 city 欄位是什麼編碼的?

以下是幾種可能的情況
1、程式是 gbk 的,city 是 utf8 的 需要在查詢前 mysql_query(/set names gbk');
2、程式是 utf-8 的,city 是 gbk 的 需要在查詢前 mysql_query(/set names utf8');
3、最壞的情況:city 沒有設定編碼,且程式是 utf-8 的
此時需要
$w = iconv('utf-8', 'latin1', '廣東');
$sql="SELECT `cityid` FROM `weathercityid` where `city`='$w'";

取回的資料還需反編碼
------解決方案--------------------
你這不是輸出了嗎,怎麼不成功了?
------解決方案--------------------
樓主問題,說的很深奧啊。
------解決方案--------------------
把檔案另存新檔utf-8,mysql查詢的時候設定mysql_query('set names utf8');
mysql識別不了編碼所以查不出
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.