PHP 页面和数据库显示乱码和问号

插入数据规格

mysqli_query($conn,"set names 'utf8'");

解决 php 向数据库插入数据时导致数据库的中文汉字变成乱码;

读取数据规格

header("Content-Type: text/html; charset=utf-8");

解决 php 页面向数据库读取数据时在 php 页面显示中文汉字为问号(?);

mysqli_query($conn,"set names 'utf8'"); 需要有两个参数:$conn, 连接信息和 "set names 'utf8'" 设置编码。

最终完整代码

所以最终规格如下,在一个新的数据库连接后面追加字符编码规则代码:

$conn = new mysqli($servername, $username, $password, $dbname);
mysqli_query($conn,"set names 'utf8'");
header("Content-Type: text/html; charset=utf-8");

更多可能问题

在数据中的目标字段的字符集也需要同时修改为 uft-8

字符集:utf8

字符规则:utf8_general_ci

通常在页面和数据库中文汉字显示乱码或问号的问题原因,基本是程序与数据库及浏览器编码不统一导致的,所以根据以上的方法正确设置 php 的插入编码、数据库的字符集以及浏览器编码,即可解决。

给TA打赏
共{{data.count}}人
人已打赏
技术教程

MySQL 数据库表字段设置唯一性约束:unique

2022-11-29 15:04:49

技术教程

密码强度与长度校验正则表达式

2022-11-29 15:06:31

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索