为什么我通过PHP代码往数据库加内容时,汉字显示乱码

为什么我通过PHP代码往数据库加内容时,汉字显示乱码,第1张

这个要看你是什么形式去传递到PHP页面,如果你HTML内容不是用utf8编码的话,传过去的时候就会产生乱码如果你是用JS去传值过去的话,编码统一还是会出现这个问题,请用JS+escape函数解决传到PHP的时候到网上找一个PHP+unescape反译

$comconn=mysql_query("insert into `log`(`name`,`pword`,`power`) values ('$name','ddd','9999')");

建议你不要这样写,下面的比较容易理解

$sql = sprintf("INSERT INTO `log` SET `name` = '%s', `pword` = '%s', `power` = '%s'",

addslashes($name),

addslashes($pword),

$power

");

注意一点,容易出现一些特殊字符的串,要加上addslashes

进行转义,就不会出现写入出错了

乱码可能性比较多

你的php文件本身的格式是什么,你用编辑器打开,另存为时,有一个选择,请选择utf8

你的数据库应该使用gbk或者utf-8,如果像你说的其他都是utf-8的话推荐数据库也用utf8。

对于你的乱码问题,原因为:Latin1字符集不支持中文,所以在存入数据库后中文由于无法解析就会变成无意义的字符,这种乱码是无法恢复的。

将浏览器中的编码改成utf-8,数据库中也是。在php页面首行加上header("Content-type:

text/html;

charset=utf-8");,必须首行,前面不能有输出。

还有,在查询数据库时加上:mysql_query(set

names

utf-8);

其实,只要注意文件编写的时候编码、数据库的编码一般就不会有这个问题的,但是,比如你用DW(dwcs4貌似没有这个现象)打开文件,它会以默认的编码读取,一旦你保存了,那就完了,用EditPlus打开之后,右下角有编码提示,如果发现不对,另存为,覆盖一下,就可以了

以上就是关于为什么我通过PHP代码往数据库加内容时,汉字显示乱码全部的内容,包括:为什么我通过PHP代码往数据库加内容时,汉字显示乱码、用php在mysql中添加记录是乱码、我的php中character_set_database latin1,用php插入数据,在数据库看是乱码,然后再用php调出来任然乱码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10179681.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-06
下一篇2023-05-06

发表评论

登录后才能评论

评论列表(0条)

    保存