如何解决php insert mysql乱码问题

php insert mysql乱码的解决办法:1、将php页面保存为UTF-8的编码格式;2、用UTF8格式进行数据提交;3、在数据库中设置“ENGINE=InnoDB DEFAULT CHARSET=utf8;”。

本文操作环境:Windows7系统,PHP7.1版,Dell G3电脑。

如何解决php insert mysql乱码问题?

php插入到mysql数据库中文乱码问题解决

今天重装了系统重新安装了PHP的运行环境,也没注意太多,想写点东西复习复习……当我用INSERT INTO想数据表里添加数据的时候,发现数据只要是中文的都是以乱码显示的,于是我在网页中规定了语言为gbk发现还是不行,在网上查了半天做了一下总结:

1.php页面要保存为UTF-8的编码格式。

2.php在数据提交的是要用UTF8。

3.MYSQL创建表的时候要用ENGINE=InnoDB 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=InnoDB 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的,也是可以的~

更多关于云服务器域名注册虚拟主机的问题,请访问西部数码官网:www.west.cn

赞(0)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » 如何解决php insert mysql乱码问题

登录

找回密码

注册