您的位置:

用php将中文写入mysql,php怎么输出中文

本文目录一览:

用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';");

通过以上几步操作,基本可以保证数据库使用过程中不会出现乱码