php写入数据库中文 php写入数据库中文怎么写

php将汉字写入数据库问题

你建立的表字段的编码是什么编码呢?mysql的编码分为两种,一种是客户端编码,这个可以通过set names GBK(utf8);来改变;这句话的意思是告诉mysql服务器,你的客户端使用的是什么编码。另一种是数据在库中存储时使用的编码,这个编码可以在安装mysql建立数据库,建立表的时候选择,以建表时的选择为最后标准,若果没选择,默认继承安装时的选择。你说的插入成功却是空行的原因,可能是因为安装时选择的编码里面,对汉字的编码支持的太少,因此出现这样的情况,建议:show create table table_name;查看下建表语句中的字符集。最好修改成utf8。这样适应能力强一些!

10年的沾益网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。全网营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整沾益建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联建站从事“沾益网站设计”,“沾益网站推广”以来,每个客户项目都认真落实执行。

请教大侠,php存入mysql数据库时汉字乱码怎么解决,文档和数据库都是utf8格式。

乱码有几个方面

首先确保数据库的编码是否正确

其次确保连接数据库的代码是否指定了正确的编码。

另外就是html页面的编码是否一致,麻烦把问题补充清楚方便排查问题。

php不能往mysql数据库添加汉字,只能添加字母和数字

php+mysql数据时我们必须保证提交到数据库的编码与mysql编码是一致的这样才可以保存中文不出现问号乱码问题,下面我先整理两个让mysql与页面保证编码一致的方法。

解决中文插入数据库乱码的方法:

直接把中文转变成utf-8格式,大多是这个问题导致的。

代码如下复制代码

$str

=

iconv('gbk','utf-8',$str);

如果还不行检查网页编码是否正确:

代码如下复制代码

?php

header("Content-Type:text/html;charset=utf-8");

?

建表:

代码如下复制代码

Create

TABLE

`net_city`

(

`cityid`

smallint(4)

NOT

NULL

auto_increment,

`cityname`

varchar(80)

NOT

NULL

default

'',

`provinceid`

smallint(2)

NOT

NULL

default

'0',

`inarea`

varchar(5000)

NOT

NULL

default

'',

`outarea`

varchar(5000)

NOT

NULL

default

'',

`tel`

varchar(400)

NOT

NULL

default

'',

PRIMARY

KEY

(`cityid`)

)

ENGINE=MyISAM

DEFAULT

CHARSET=utf8;

PHP里的代码:

$conn=mysql_connect("localhost",

"用户名",

"密码");

mysql_query("set

names

'utf8'",$conn);

mysql_select_db("

数据名",$conn);

$exec="insert

into

net_city

(cityname,inarea,outarea,tel)

values

('".$link_cityname."','".$link_inarea."','".$link_outarea."','".$link_tel."')";

$result=mysql_query($exec,$conn);

if($result){

echo

"1";

}else{

echo

"0";

}

mysql_close($conn);

后来我试了试全部都用成gbk的,也是可以的~

在查询数据时我们直接使用mysql_query()来设置

mysql_query("SET

NAMES

GBK");

//GBK处为编码设置

例子

下面是

"insert.php"

页面的代码:

代码如下复制代码

?php$con

=

mysql_connect("localhost","peter","abc123");

if

(!$con)

{

die('Could

not

connect:

'

.

mysql_error());

}

mysql_select_db("my_db",

$con);

mysql_query("SET

NAMES

GBK");

//GBK处为编码设置

$sql="INSERT

INTO

person

(FirstName,

LastName,

Age)VALUES('$_POST[firstname]','$_POST[lastname]','$_POST[age]')";

if

(!mysql_query($sql,$con))

{

die('Error:

'

.

mysql_error());

}

echo

"1

record

added";

mysql_close($con)

?

PHP文件链接数据库,插入数据,中文显示乱码,求高手解惑!!

你的数据库是什么编码的?默认的latin编码是不支持汉字的,改成utf8或者utf8mb4编码,然后你的PHP文件编码也使用utf8编码


文章标题:php写入数据库中文 php写入数据库中文怎么写
本文路径:http://myzitong.com/article/ddipsic.html