• 技术文章 >后端开发 >PHP问题

    如何解决php insert mysql乱码问题

    藏色散人藏色散人2021-12-27 09:41:34原创165

    php insert mysql乱码的解决办法:1、将php页面保存为UTF-8的编码格式;2、用UTF8格式进行数据提交;3、在数据库中设置“ENGINE=MyISAM 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=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的,也是可以的~

    推荐学习:《PHP视频教程

    以上就是如何解决php insert mysql乱码问题的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php insert
    上一篇:php怎么判断数据库有几条数据 下一篇:php怎么实现省市区查询
    PHP编程就业班

    相关文章推荐

    • 如何解决mysql jdbc中文乱码问题• 如何解决php用户信息乱码问题• php 传参数为什么会乱码• 如何解决ajax传到后台php中文乱码问题

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网