今天重裝了系統重新安裝了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