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

发布时间:2022-11-23

本文目录一览:

  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=gb2312

都行,然后重启 MySQL。

php向mysql写入数据中文显示怎么解决

先检查MYSQL数据库的编码格式。找到MYSQL数据的安装目录,打开 my.ini 文件:

  • 找到 default-character-set,设置为 utf8(设置两个地方)
  • 重启 MYSQL 数据库
  • 设置网页的编码格式为 UTF-8
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

在 PHP 文件中设置:

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. 字段默认编码

默认情况下,字段的编码同表的编码,但是如果修改了表的编码,字段编码不会同步修改,需要手动修改。 示例修改表编码:

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

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