
正文
php读取数据库汉字乱吗 php获取数据库内容
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
PHP读取Access数据库 出乱码
accessphp读取数据库汉字乱吗的中文版默认是GBK格式的php读取数据库汉字乱吗,是无法改变字符类型的,所以用php读取的时候会乱码。
解决方法是:使用iconv转换
一、使用 iconv函数制作一个转码的自定义从GBK转到UTF-8的函数,如以下代码:
function enc($c){return iconv('gbk','utf-8',$c);}
二、为php读取数据库汉字乱吗了写入数据库的编码是符合数据库需要的,所以php读取数据库汉字乱吗我们还要制作一个从UTF-8转向GBK的函数:
function dec($c){return iconv('utf-8','gb2312',$c);}
制作好了转码函数,接下就是正常使用了。在从数据库里面调数据显示在页面的时候使用enc()函数,从页面提交数据到数据库时使用dec()函数,这样就可以很好的解决PHP使用UTF-8编码,ACCESS使用系统默认编码的问题了。
相关问答
Q1: PHP在显示数据库中的中文数据时显示乱码
其实,只要注意文件编写的时候编码、数据库的编码一般就不会有这个问题的,但是,比如你用DW(dwcs4貌似没有这个现象)打开文件,它会以默认的编码读取,一旦你保存了,那就完了,用EditPlus打开之后,右下角有编码提示,如果发现不对,另存为,覆盖一下,就可以了
Q2: 为什么 数据库提取中文是乱码?
从后台读取数据时,通常会出现乱码情况,比如“汉字”变成“?”等,造成这种情况的原因通常是编码设置不对,解决方法如下:
第一种方法:在php中添加如下代码,将编码格式设为“utf-8”,代码如下:
header("Content-Type: text/html; charset=UTF-8");
第二种方法:在php中添加另外一行代码,同样用来转码,代码如下:
$conn = mysqli_connect($servername, $username, $password, $mysqlname);
$conn-query("SET NAMES utf8");
该种情况是先创建链接,之后再转码。
另外,在使用数据库时,直接手动(非代码)建表,通常会在表中输入汉字时,浏览时无法显示或显示为“?”,造成这种情况的原因也是编码问题,解决方案如下:
在建表或建库时,表和库的编码格式一定要统一,设置成:“utf8_general_ci”,如下图:
Q3: php显示中文乱码
php数据库中文乱码的解决办法:1、创建数据库时,规定字符类型为uft8;2、创建表时,规定字符类型为utf8;3、在PHP的MySQL连接函数中,添加语句“mysql_query("set names 'utf8'")。
php读取数据库汉字乱吗的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于php获取数据库内容、php读取数据库汉字乱吗的信息别忘了在本站进行查找喔。






