php网页抓取乱码(国外PHP网页显示MySQL乱码问题的解决方法及解决办法)

优采云 发布时间: 2021-12-08 03:08

  php网页抓取乱码(国外PHP网页显示MySQL乱码问题的解决方法及解决办法)

  乱码问题:使用PHPmyAdmin操作MySQL数据库时,MySQL数据库汉字显示正常,但PHP网页显示MySQL数据时,汉字全部变成?标志。

  现象:用PHPmyAdmin输入汉字是正常的,但是当PHP网页显示MySQL数据时,汉字变成了?标志,有多少?符号,因为有多少个汉字。

  原因:PHP网页中没有代码告诉MySQL用什么字符集输出汉字。

  解决方案:

  1.网页文件头设置编码

  2.PHP页面保存时使用utf-8编码,可以使用记事本或者convertz802进行文件转换

  3.MYSQL新建数据库时,选择UTF-8编码和数据库的字符集,设置为utf-8_unicode_ci(Unicode(多语言),不区分大小写),

  库中表的排序设置为utf-8_general_ci

  表中各个字段的排序设置为utf-8_general_ci

  4.PHP连接数据库时,在mysql_connect()之后添加

  

//设置数据的字符集utf-8

mysql_query("set names 'utf8' ");

mysql_query("set character_set_client=utf8");

mysql_query("set character_set_results=utf8");

  注意是utf8,不是utf-8。

  如果您的网页编码为 gb2312,则为 SET NAMES GB2312。不过小编强烈建议网页编码、MySQL数据表字符集、PHPmyAdmin都统一使用UTF-8。

  以上四点可以实现整个站点的utf-8编码,数据库中不会出现中文乱码。

  乱码问题2:用PHPmyAdmin输入数据时出错,不允许输入或乱码。

  解决方案:这是一个设置问题。请安装最新版本的PHPmyAdmin或Appserv,打开PHPmyAdmin,MySQL字符集:UTF-8 Unicode(utf8);MySQL连接校对应为utf8_unicode_ci;新建数据库时也请选择utf8_unicode_ci。网页字符为也最好选择utf-8进行采集。utf-8是国际标准编码,这是一种趋势。

  代码乱码问题3:本机开发的MySQL数据表,在本机测试一切正常,但使用空间商提供的PHPmyAdmin上传时出现问题,上传失败。尤其是使用国外的PHP空间。

  解决方法:首先检查网站提供的PHPmyAdmin字符集设置,并确保您构建的数据表与服务提供者的代码相同。国外MySQL不支持gb2312,甚至最新版的Apache也不支持gb2312。如果是因为编码不统一,可以重建数据表,当然使用国际标准UTF8。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线