真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

php插入中文到數(shù)據(jù)庫(kù) php引入數(shù)據(jù)庫(kù)

php將漢字寫(xiě)入數(shù)據(jù)庫(kù)問(wèn)題

你建立的表字段的編碼是什么編碼呢?mysql的編碼分為兩種,一種是客戶端編碼,這個(gè)可以通過(guò)set names GBK(utf8);來(lái)改變;這句話的意思是告訴mysql服務(wù)器,你的客戶端使用的是什么編碼。另一種是數(shù)據(jù)在庫(kù)中存儲(chǔ)時(shí)使用的編碼,這個(gè)編碼可以在安裝mysql建立數(shù)據(jù)庫(kù),建立表的時(shí)候選擇,以建表時(shí)的選擇為最后標(biāo)準(zhǔn),若果沒(méi)選擇,默認(rèn)繼承安裝時(shí)的選擇。你說(shuō)的插入成功卻是空行的原因,可能是因?yàn)榘惭b時(shí)選擇的編碼里面,對(duì)漢字的編碼支持的太少,因此出現(xiàn)這樣的情況,建議:show create table table_name;查看下建表語(yǔ)句中的字符集。最好修改成utf8。這樣適應(yīng)能力強(qiáng)一些!

成都創(chuàng)新互聯(lián)不只是一家網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司;我們對(duì)營(yíng)銷、技術(shù)、服務(wù)都有自己獨(dú)特見(jiàn)解,公司采取“創(chuàng)意+綜合+營(yíng)銷”一體化的方式為您提供更專業(yè)的服務(wù)!我們經(jīng)歷的每一步也許不一定是最完美的,但每一步都有值得深思的意義。我們珍視每一份信任,關(guān)注我們的成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)質(zhì)量和服務(wù)品質(zhì),在得到用戶滿意的同時(shí),也能得到同行業(yè)的專業(yè)認(rèn)可,能夠?yàn)樾袠I(yè)創(chuàng)新發(fā)展助力。未來(lái)將繼續(xù)專注于技術(shù)創(chuàng)新,服務(wù)升級(jí),滿足企業(yè)一站式成都全網(wǎng)營(yíng)銷需求,讓再小的品牌網(wǎng)站制作也能產(chǎn)生價(jià)值!

php不能往mysql數(shù)據(jù)庫(kù)添加漢字,只能添加字母和數(shù)字

php+mysql數(shù)據(jù)時(shí)我們必須保證提交到數(shù)據(jù)庫(kù)的編碼與mysql編碼是一致的這樣才可以保存中文不出現(xiàn)問(wèn)號(hào)亂碼問(wèn)題,下面我先整理兩個(gè)讓mysql與頁(yè)面保證編碼一致的方法。

解決中文插入數(shù)據(jù)庫(kù)亂碼的方法:

直接把中文轉(zhuǎn)變成utf-8格式,大多是這個(gè)問(wèn)題導(dǎo)致的。

代碼如下復(fù)制代碼

$str

=

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

如果還不行檢查網(wǎng)頁(yè)編碼是否正確:

代碼如下復(fù)制代碼

?php

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

?

建表:

代碼如下復(fù)制代碼

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("

數(shù)據(jù)名",$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);

后來(lái)我試了試全部都用成gbk的,也是可以的~

在查詢數(shù)據(jù)時(shí)我們直接使用mysql_query()來(lái)設(shè)置

mysql_query("SET

NAMES

GBK");

//GBK處為編碼設(shè)置

例子

下面是

"insert.php"

頁(yè)面的代碼:

代碼如下復(fù)制代碼

?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處為編碼設(shè)置

$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使用utf8插入中文數(shù)據(jù)到MySQL中文顯示會(huì)亂碼怎么辦?

數(shù)據(jù)庫(kù)使用utf8編碼,需要在操作的過(guò)程中統(tǒng)一全部編碼。

1.數(shù)據(jù)庫(kù)默認(rèn)編碼

CREATE?DATABASE?`test`?DEFAULT?CHARACTER?SET?'utf8';

2.表默認(rèn)編碼

CREATE?TABLE?`tablea`(

`id`?INT?NOT?NULL?AUTO_INCREMENT,

`title`?VARCHAR(100)?NULL,

)ENGINE=InnoDB?DEFAULT?CHARSET=utf8;

3.字段默認(rèn)編碼

默認(rèn)情況下,字段的編碼同表的編碼,但是如果修改了表的編碼,字段編碼不會(huì)同步修改,需要手動(dòng)修改

這里修改編碼測(cè)試我將utf8 改為 gb2312? ,僅用于觀察修改后的情況(實(shí)際使用中可能是將gbk修改為utf8)

ALTER?TABLE?`test`.`tablea`?CHARACTER?SET?=?gb2312?;

--?修改表編碼后,查看建表語(yǔ)句

show?create?table?`tablea`;

--?可以看到輸出的建表語(yǔ)句中字段單獨(dú)設(shè)置了編碼

CREATE?TABLE?`tablea`(

`id`?INT?NOT?NULL?AUTO_INCREMENT,

`title`?VARCHAR(100)?CHARACTER?SET?utf8?NULL,

)ENGINE=InnoDB?DEFAULT?CHARSET=gb2312;

--?需要手動(dòng)修改字段編碼

ALTER?TABLE?`tablea`?

CHANGE?COLUMN?`title`?`title`?VARCHAR(100)?CHARACTER?SET?'gb2312'?NULL?DEFAULT?NULL?;

4.當(dāng)前數(shù)據(jù)庫(kù)連接的編碼

連接數(shù)時(shí)設(shè)置編碼

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

通過(guò)以上幾步操作,基本可以保證數(shù)據(jù)庫(kù)使用過(guò)程中不會(huì)出現(xiàn)亂碼


文章名稱:php插入中文到數(shù)據(jù)庫(kù) php引入數(shù)據(jù)庫(kù)
地址分享:http://weahome.cn/article/dogopjp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部