php插入到mysql數據庫中文亂碼問題解決


今天重裝了系統重新安裝了PHP的運行環境,也沒注意太多,想寫點東西復習復習……當我用INSERT INTO想數據表里添加數據的時候,發現數據只要是中文的都是以亂碼顯示的,於是我在網頁中規定了語言為gbk發現還是不行,在網上查了半天做了一下總結:

1.php頁面要保存為UTF-8的編碼格式。
2.php在數據提交的是要用UTF8。
3.MYSQL創建表的時候要用ENGINE=MyISAM DEFAULT CHARSET=utf8;


舉例(由於我懶得寫,網上的這個例子感覺還挺清楚的):
建表:
Create TABLE `net_city` (
`cityid` smallint(4) NOT NULL auto_increment,
`cityname` varchar(80) NOT NULL default '',
`provinceid` smallint(2) NOT NULL default '0',
`inarea` varchar(5000) NOT NULL default '',
`outarea` varchar(5000) NOT NULL default '',
`tel` varchar(400) NOT NULL default '',
PRIMARY KEY (`cityid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
PHP里的代碼:
$conn=mysql_connect("localhost", "用戶名", "密碼");
mysql_query("set names 'utf8'",$conn);
mysql_select_db("數據名",$conn);
$exec="insert into net_city (cityname,inarea,outarea,tel) values ('".$link_cityname."','".$link_inarea."','".$link_outarea."','".$link_tel."')";

$result=mysql_query($exec,$conn);
if($result){
       echo "1";
     }else{
        echo "0";
     }
mysql_close($conn);

后來我試了試全部都用成gbk的,也是可以的~

 轉載自http://blog.csdn.net/linwins/article/details/5947545


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM