当前位置:首页 » 数据仓库 » php连接mysql数据库设置字符集
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

php连接mysql数据库设置字符集

发布时间: 2022-07-11 07:34:23

‘壹’ php mysql 数据库 字符集都设置成utf8 写入数据库以后还是乱码,解决再追加分数

在链接数据库后,加一条
//mysql_select_db($dbname);这条之后
mysql_query("set names utf8");
一般就可以了

‘贰’ php如何连接mysql

你的代码是怎么写的,贴出来看看,另外你用phpmyadmin连一下你的数据库试试看看能否成功,如果不成功的话重启一下你的mysql服务

‘叁’ php创建mysql数据库时候如何设置字符集

我来给你做一个综合解释吧。
在正常情况下。
PHP脚本 HTML 已经浏览器 然后就是数据库。
都有自己的字符集。何谓字符集。我想你如果是一个真正想热衷于学PHP
那么你应该花一定的时间去了解一下字符集的问题。
因为无论你以后做什么项目开发什么网站都是要牵涉到字符集。
就好比我做第一个项目。因为字符集搞的死去活来。
好进入正题。怎么解决问题呢?
1.PHP的字符集。一般PHP网页的是嵌套在html页面以内。那么如果在没有冲突的情况下可以使用
header方面设置。比如<?php header ... ?>
2.HTML的字符集,一般是网页的优先字符集,这个问题是牵涉到你的网站是什么定位,比如:你的网站仅仅适合国内的客户。那么用gbk 或者gb2312.如果想老外也开凑凑热闹的话,就用utf-8.至于怎么设置这个字符集,你可以在<meta>这个标记中看到。
3.数据库的问题。mysql_query("set names gbk"); 这句话意思就是说,在操作数据库的时候已这个字符集去读写。当然这个字符集要对应你的页面的字符集哦。
4.浏览器。浏览器的问题是最万恶的,因为每个浏览器默认的是gb2312.当然不同的浏览器是不同的。所以要想成为一名优秀的程序员,写出优质的代码。你还得去了解每个浏览器的差别。当然目前是不需要的,当然这个问题你慢慢学习。写代码的过程中会慢慢了解到的。

你要做的就是将所有使用字符集确保一致性

问题就这些吧,如果有什么问题可以继续问哦。凡是对PHP有热情的人。我都会尽全力帮一下。哈哈。因为这个加物以类聚。还有这个内容绝对不是复制粘贴的。

‘肆’ PHP显示MySQL数据乱码,字符集设置都是UTF8,数据库也是UTF8,一直找不到问题在哪里,代码见详细,求大神

php+mysql的utf-8中文乱码问题的解决方法
问题汇总:
1.mysql数据库默认的编码是utf8,如果这种编码与你的PHP网页不一致,可能就会造成MYSQL乱码.
2.MYSQL中创建表时会让你选择一种编码,如果这种编码与你的网页编码不一致,也可能造成MYSQL乱码.
3.MYSQL创建表时添加字段是可以选择编码的,如果这种编码与你的网页编码不一致,也可能造成MYSQL乱码.
4.用户提交页面的编码与显示数据的页面编码不一致,就肯定会造成PHP页面乱码.
5.如用户输入资料的页面是big5码, 显示用户输入的页面却是gb2312,这种100%会造成PHP页面乱码.
6.PHP页面字符集不正确.
7.PHP连接MYSQL数据库语句指定的编码不正确.
使用mysql+php产生乱码的原因都了解得很清楚了,那么解决就不困难了.
针对不同问题的解决方法:
1.mysql数据库默认的编码是utf8,如果这种编码与你的PHP网页不一致,可能就会造成MYSQL乱码.
修改数据库编码,如果是数据库编码不正确,可以在phpmyadmin 执行如下命令:
Alter DATABASE 'test' DEFAULT CHARACTER SET utf8 COLLATE utf8_bin

以上命令就是将test数据库的编码设为utf8.
2.MYSQL中创建表时会让你选择一种编码,如果这种编码与你的网页编码不一致,也可能造成MYSQL乱码.
修改表的编码:
Alter TABLE 'category' DEFAULT CHARACTER SET utf8 COLLATE utf8_bin

以上命令就是将一个表category的编码改为utf8.
3.MYSQL创建表时添加字段是可以选择编码的,如果这种编码与你的网页编码不一致,也可能造成MYSQL乱码.
修改字段的编码:
Alter TABLE 'test' CHANGE 'dd' 'dd' VARCHAR( 45 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL

以上命令就是将test表中 dd的字段编码改为utf8.
4.用户提交页面的编码与显示数据的页面编码不一致,就肯定会造成PHP页面乱码.
如果是这种情况容易解决,只需检查下页面,修改源文件的charset即可.
5.如用户输入资料的页面是big5码, 显示用户输入的页面却是gb2312,这种100%会造成PHP页面乱码.
这种情况也是修改页面charset即可.
6.PHP页面字符集不正确.
为了避免PHP页面乱码的发生,PHP页面开始第一句
header("content-type:text/html; charset=utf-8");

//强行指定页面的编码,以避免乱码

7.PHP连接MYSQL数据库语句指定的编码不正确.
在连接数据库的语句中.
mysql_connect('localhost','user','password');

mysql_select_db('my_db');
mysql_query("set names 'utf8'"); //select 数据库之后加多这一句

‘伍’ php中使用mysqli创建数据库的时候怎么指定字符集和排序规则

字符集很简单,但是数据的排序需要通过SQL语句来协助完成,ORDER BY 语句,代码如下:

//假设你已经成功连接了数据库($mysqli变量假设为连接的资源句柄)
//通过对象方式设置字符编码
$mysqli->set_charset('utf8');
//通过函数方式设置字符编码
mysqli_set_charset($mysqli,'utf8');

//那么接下来是数据排序的话,需要编写一条SQL查询语句(DESC倒序排列|ASC正序排列)
$sql="SELECT`字段`FROM`表名`WHERETRUEORDERBY`字段`DESC;";

如果还有什么问题,欢迎追问~

‘陆’ php使用pdo连接mysql数据库如何设置发送的字符集

和Mysql类里面的用法一样,他们只过不过是我们链接数据库的中间桥梁变了,本质并没有变,还是对数据库进行操作,而操作的要利用SQL语句,所以这里可以用同样的mysql语句即可,只不过执行函数变了!在mysql类里面,我们用mysql_query(“SET NAMES gbk”);设置字符集编码为gbk啦!在PDO里面我们用$db->query("SET NAMES gbk");当然也有其他的函数也可以。http://wenku..com/view/57270c36a32d7375a4178002.html这里有网络文库关于PDO的解释和简单使用!