本文目录一览:
- 1、用php将中文写入mysql,在phpmyadmin中查看显示为乱码,求解决方法!!
- 2、用PHP向mysql数据库中写入中文汉字为什么显示不出来?我已经设置成gb2312了
- 3、php向mysql写入数据中文显示怎么解决
- 4、用php保存到mysql数据库的中文在phpmyadmin中显示为乱码?
- 5、PHP使用utf8插入中文数据到MySQL中文显示会乱码怎么办?
用php将中文写入mysql,在phpmyadmin中查看显示为乱码,求解决方法!!
在命令行添加的时候,如果是Windows系统,默认是GBK的,所以你先在命令行里面执行一句 set names utf8;
再添加,这样,在phpmyadmin中看就不是乱码了。
多学点编码的知识。
用PHP向mysql数据库中写入中文汉字为什么显示不出来?我已经设置成gb2312了
你说的该数据库配置文件吧?
windows
下
是在mysql安装目录下的my.ini
linux下/etc/my.cnf
[mysqld]
下面增加
default-character-set
=
utf8
你要改成
default-character-set
=
gb2312
都行
重启mysql
php向mysql写入数据中文显示怎么解决
先检查MYSQL数据库的编码格式,那我们先找到MYSQL数据的安装目录,找到my.ini文件:
打开my.ini文件:找到default-character-set,把它设置为utf8,一共要设置2个地方
然后在重启MYSQL数据,找到服务里面
然后在设置我们网页的编码格式,设置为UTF-8
meta http-equiv="Content-Type" content="text/html; charset=utf-8"
5
在PHP文件中设置,设置为utf8
mysql_query("set names 'utf8'");
用php保存到mysql数据库的中文在phpmyadmin中显示为乱码?
你是用phpmyadmin连接数据库的时候,也选择下字符集,看你插入数据用的什么字符集,你连接数据库的时候,也选择相同的字符集,应该就好了
PHP使用utf8插入中文数据到MySQL中文显示会乱码怎么办?
数据库使用utf8编码,需要在操作的过程中统一全部编码。
1.数据库默认编码
CREATE DATABASE `test` DEFAULT CHARACTER SET 'utf8';
2.表默认编码
CREATE TABLE `tablea`(
`id` INT NOT NULL AUTO_INCREMENT,
`title` VARCHAR(100) NULL,
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
3.字段默认编码
默认情况下,字段的编码同表的编码,但是如果修改了表的编码,字段编码不会同步修改,需要手动修改
这里修改编码测试我将utf8 改为 gb2312 ,仅用于观察修改后的情况(实际使用中可能是将gbk修改为utf8)
ALTER TABLE `test`.`tablea` CHARACTER SET = gb2312 ;
-- 修改表编码后,查看建表语句
show create table `tablea`;
-- 可以看到输出的建表语句中字段单独设置了编码
CREATE TABLE `tablea`(
`id` INT NOT NULL AUTO_INCREMENT,
`title` VARCHAR(100) CHARACTER SET utf8 NULL,
)ENGINE=InnoDB DEFAULT CHARSET=gb2312;
-- 需要手动修改字段编码
ALTER TABLE `tablea`
CHANGE COLUMN `title` `title` VARCHAR(100) CHARACTER SET 'gb2312' NULL DEFAULT NULL ;
4.当前数据库连接的编码
连接数时设置编码
// PDO 连接
$db = new PDO('mysql:host=myhost;dbname=test', 'login', 'password',
array(PDO::MYSQL_ATTR_INIT_COMMAND = 'SET NAMES \'UTF8\'')
);
// mysqli连接
$link = mysqli_connect("127.0.0.1", "my_user", "my_password", "test");
mysqli_query($link,"SET NAMES 'utf8';");
通过以上几步操作,基本可以保证数据库使用过程中不会出现乱码