php无法将中文数据写入数据库表怎么办

本文操作环境:windows10系统、PHP 7&&Mysql 5.0、thinkpad t480电脑。

学习php的过程中我们可能会遇到无法将中文数据插入数据表的情况,以及前台网页无法正确显示从数据库中获取的中文数据的情况。遇到这种问题我们需要将mysql所用字符集修改为utf8,PHP文件编码所用字符集改为utf-8,前台网页所用字符编码改为utf-8,这样就可以解决问题了。

具体步骤如下:

运行Mysql安装目录下的MySQLInstanceConfig.exe,配置默认编码为utf8;

记得选择“Best Support For Multilingualism”,同时在下面的下拉列表中选择“utf8”

配置完成后,检查MySQL安装路径下的my.ini文件中“default-character-set”的设置,此时应该是已经设置为utf8了,如果不是,则设置为default-character-set=utf8

1 在创建数据库时指定utf8编码:

CREATE  DATABASE  database_name
CHARACTER  SET  “utf8”
COLLATE  “utf8_general_ci”;

2 在创建数据表时指定utf8编码:

CREATE  TABLE  table_name
(
Column_name  datatype,
......
)ENGINE=InnoDB  DEFAULT  CHARSET=utf8;

将文件编码设置为utf-8;

如果用的是PhpStORM,则其默认的文件编码就是utf-8,不用更改

设置页面所用字符集为utf-8:

在对数据进行操作之前应该先进行mysql_query('set names utf8'); 操作,然后再执行对数据的查询,更新,插入等 。

最后将客户端来源数据使用的字符集,查询结果字符集设置为gbk,:

SET character_set_client =gbk; //直接从MySQL命令行客户端插入中文数据时,存储数据不会乱码

SET character_set_results =gbk; //从MySQL命令行客户端查看返回的中文数据不会乱码

PS:上述内容是针对于MySQL Server 5.0的,在MySQL Server 5.6 中其默认的所有所用的字符编码都是utf8

--结束END--

本文标题: php无法将中文数据写入数据库表怎么办

本文链接: https://www.lsjlt.com/news/203.html (转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢

  • php无法将中文数据写入数据库表怎么办

    php无法将中文数据写入数据库表的解决方法:1、将mysql所用字符集修改为utf8;2、将php文件编码所用字符集改为utf-8;3、将前台网页所用字符编码修改为utf-8。
    阅读数:395 php 中文数据 数据表
  • php 无法导入数据库怎么办

    php无法导入数据库的解决办法:1、检查插入字段类型是否设置错误并修改;2、检查在编辑器的文本中是否存在特殊字符并修改替换即可。
    阅读数:811 php 数据库
  • php不能写入中文怎么办

    php不能写入中文的解决办法:1、设置html页面和php页面的编码为“charset=utf-8”;2、通过“mysql_query("set names utf8");”改变客户端的编码。
    阅读数:960 php
  • php页面显示不出数据库的表怎么办

    php页面显示不出数据库的表的解决办法:1、连接数据库并设置字符集;2、查询数据表中的数据;3、循环遍历出数据表中的数据;4、设置以表格的形式进行显示即可。
    阅读数:798 php 数据库
  • php中数据库选择失败怎么办

    php中数据库选择失败的解决办法:1、检查mysql_select_db和mysqli_select_db;2、修改两个连接方式的传入参数顺序即可。
    阅读数:747 php 数据库
  • php修改数据库数据不成功怎么办

    php修改数据库数据不成功的解决办法:1、打开相应的PHP文件;2、获取用户账号和密码并连接数据库;3、用username变量修改数据表中的数据;4、查看错误信息;5、检查$db是否正确连接并修改;6、检查prepare方法中sql所涉及的表字段名是否有误并修改正确即可。
    阅读数:935 数据库 php
  • linux php连不上mysql数据库怎么办

    linux php连不上mysql数据库的解决办法:1、执行命令“apt install php-mysql”;2、通过执行“service apache2 restart”重启apache2服务器即可。
    阅读数:641 linux php mysql
  • php与数据库交互式乱码怎么办

    php与数据库交互式乱码的解决办法:1、把mysql字符编码改为utf8_general_ci;2、在PHP文件中设置字符编码。
    阅读数:790 php 数据库
  • 用php连接数据库失败怎么办

    用php连接数据库失败的解决办法:1、打开php.ini配置文件,去掉“extension=php_mysql.dll”前面的注释分号,并通过extension指定“php_mysql.dll”的绝对路径;2、修改mysql的my.ini配置文件;3、修改数据集字符集即可。
    阅读数:329 php 数据库
  • php添加中文乱码怎么办

    php添加中文乱码的解决办法:1、在php中的头部header设置编码方式;2、用iconv转码;3、在html中用<meat>标签声明编码。
    阅读数:569 php
  • php bom 中文乱码怎么办

    php bom中文乱码的解决办法:1、打开相应的PHP开发文件;2、添加“$bom = pack("C3",239,187,191);$strcsv =$bom.$strcsv;”即可。
    阅读数:471 php bom 乱码
  • PHP mysqli 中文 乱码怎么办

    PHP mysqli中文乱码的解决办法:1、检查并修改html文件的编码;2、修改mysql数据库的排序规则为“utf8_general_ci”;3、在执行SQL语句之前加入设置编码即可。
    阅读数:626 PHP mysqli
  • php cmd中文乱码怎么办

    php cmd中文乱码的解决办法:1、打开命令提示符窗口,执行“chcp 65001”命令;2、点击命令提示符旁边的“图标”,在展开的下拉项中,选择“属性”;3、勾选“使用旧版控制台(U)(需要重新启动,影响所有控制台)”和“丢弃旧的副本”即可。
    阅读数:189 php
  • 如何解决php写入数据库中文乱码问题

    php写入数据库中文乱码的解决办法:1、创建数据库并设置“utf8_general_ci”编码;2、用PHP读写数据库,并设置“mysql_query("set names 'utf8'");”即可。
    阅读数:508 php 乱码
  • php 无法传递session怎么办

    php无法传递session的解决办法:1、在客户端中开启cookie;2、检查浏览器问题并实现存取cookie;3、开启php.ini中的session.use_trans_sid即可。
    阅读数:470 php session
  • php echo无法输出怎么办

    php echo无法输出的解决办法:1、安装配置好PHP运行环境;2、将文件后缀名设置为“.php”;3、在浏览器中输入“http://localhost/test.php”即可。
    阅读数:435 php echo
  • PHP xcache无法加载怎么办

    PHP xcache无法加载的解决办法:1、查看日志中存在的错误;2、加大“xcache.sizexcache.size = 64M”即可。
    阅读数:657 PHP xcache
  • php 无法得到post怎么办

    php无法得到post的方法:1、将项目创建在Apache服务器的工作目录下;2、将apache服务器目录映射到本地目录即可。
    阅读数:790 php post
  • php无法创建目录怎么办

    php无法创建目录的解决办法:1、打开并检查相应的PHP代码文件;2、检查创建的目录是否存在于多级目录下;3、在mkdir函数加入第三个参数来开启递归模式,其语法如“mkdir($uploadpath,0777,true)”。
    阅读数:304 php
  • php导出csv中文乱码怎么办

    php导出csv中文乱码的解决办法:1、设置header编码修改为UTF-8;2、在输出内容前先输出BOM头;3、把UTF-8转GB2312即可。
    阅读数:827 php csv