最新消息:本站技术交流 QQ 群:28124927

php插入中文数据库乱码以及URL参数乱码

PHP exchen 4348浏览 0评论

一.插入中文到数据库乱码
插入中文到数据库显示?号或者乱码,需要注意以下几点
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);

二.URL传入中文参数乱码
http://192.168.0.19/testphp.php?test=我爱你
调用这个函数对编码进行转换即可解决
$link_cityname = mb_convert_encoding($_GET['test'], "UTF-8", "gb2312");

转载请注明:exchen's blog » php插入中文数据库乱码以及URL参数乱码

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址