今天重装了系统重新安装了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 |