最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php插入中文到sqlserver 2008里出現(xiàn)亂碼的解決辦法分享

 更新時(shí)間:2012年07月19日 13:07:14   作者:  
今天使用php操作數(shù)據(jù)庫時(shí)發(fā)現(xiàn)插入SQL Server 2008數(shù)據(jù)庫里的中文字段出現(xiàn)亂碼,通過下面的方法解決了,需要的朋友可以參考下
今天使用php操作數(shù)據(jù)庫時(shí)發(fā)現(xiàn)插入SQL Server 2008數(shù)據(jù)庫里的中文字段出現(xiàn)亂碼,下面是我一開始時(shí)的一些情況:

開發(fā)環(huán)境是php5.3.3+Apache2.2.17+SQL Server 2008,php腳本文件的編碼是utf-8,傳給數(shù)據(jù)庫的編碼是GB2312(SQL Server的默認(rèn)字符編碼可能是這個(gè),我不肯定),我用的是微軟官方提供的SQLSRV庫來連接數(shù)據(jù)庫的(PS:SQL Server 2005開始已經(jīng)不支持用mssql.dll來連接了),故使用sqlsrv_query($conn, "set names GB2312");語句來設(shè)置傳給數(shù)據(jù)庫的編碼格式的,sql語句這樣寫了:insert into Opinion (content) values ('aaa中文內(nèi)容');

運(yùn)行這條sql語句,發(fā)現(xiàn)執(zhí)行不成功,用sqlsrv_errors()函數(shù)來輸出錯(cuò)誤信息,得到如下結(jié)果:
復(fù)制代碼 代碼如下:

Array ( [0] => Array ( [0] => IMSSP [SQLSTATE] => IMSSP [1] => -46 [code] => -46 [2] => An error occurred translating the query string to UTF-16: �ڶ��ֽڵ�Ŀ�����ҳ�У�û�д� Unicode �ַ����ӳ�䵽���ַ� . [message] => An error occurred translating the query string to UTF-16: �ڶ��ֽڵ�Ŀ�����ҳ�У�û�д� Unicode �ַ����ӳ�䵽���ַ� . ) )

  這是在網(wǎng)頁上顯示的結(jié)果,上面的亂碼是原封不動copy下來的。從 “An error occurred translating the query string to UTF-16”可以看出是字符編碼轉(zhuǎn)換有問題導(dǎo)致的。于是我使用php的iconv函數(shù)來對中文進(jìn)行強(qiáng)制編碼轉(zhuǎn)換,然后執(zhí)行sql語句,代碼如下:
復(fù)制代碼 代碼如下:

$string = iconv('utf-8', 'GB2312//IGNORE', 'aaa中文內(nèi)容');
$sql = "insert into Opinion (content) values ( $string)";
[code]
  這時(shí)候又報(bào)錯(cuò)了,錯(cuò)誤信息如下:
[code]
Array ( [0] => Array ( [0] => 42S22 [SQLSTATE] => 42S22 [1] => 207 [code] => 207 [2] => [Microsoft][SQL Server Native Client 10.0][SQL Server]���� 'aaa��������' ���� [message] => [Microsoft][SQL Server Native Client 10.0][SQL Server]���� 'aaa��������' ���� ) )

  這個(gè)錯(cuò)誤信息看不出什么頭緒,我又把sql語句輸出到網(wǎng)頁上看一下是不是sql語句寫錯(cuò)了,輸出結(jié)果如下:
復(fù)制代碼 代碼如下:

insert into Opinion (content) values ( aaa��������)

  咋一看好像沒問題,其實(shí)是有問題的,注意到后面那個(gè)括號里的參數(shù)是應(yīng)該用引號來括起來的(表示它是一個(gè)字符串),所以我又修改了sql語句,代碼如下:
復(fù)制代碼 代碼如下:

$sql = "insert into Opinion (content) values ( '".$string."')"; 為了看清楚我放大點(diǎn)


  用單引號把$string括起來,這樣之后執(zhí)行sql語句成功,并且數(shù)據(jù)庫里保存的中文沒有亂碼。

相關(guān)文章

  • PHP 中文處理技巧

    PHP 中文處理技巧

    做AJAX應(yīng)用或Flash應(yīng)用,提交中文內(nèi)容到后臺,涉及到編碼解碼(encode、decode)及編碼格式的轉(zhuǎn)換。
    2010-04-04
  • php多個(gè)文件及圖片上傳實(shí)例詳解

    php多個(gè)文件及圖片上傳實(shí)例詳解

    這篇文章主要介紹了php多個(gè)文件及圖片上傳的方法,以實(shí)例形式詳細(xì)敘述了多文件上傳的原理與實(shí)現(xiàn)技巧,非常實(shí)用,需要的朋友可以參考下
    2014-11-11
  • PHP實(shí)現(xiàn)在對象之外訪問其私有屬性private及保護(hù)屬性protected的方法

    PHP實(shí)現(xiàn)在對象之外訪問其私有屬性private及保護(hù)屬性protected的方法

    這篇文章主要介紹了PHP實(shí)現(xiàn)在對象之外訪問其私有屬性private及保護(hù)屬性protected的方法,簡單介紹了php public、private及protected的功能及用法,并結(jié)合實(shí)例形式分析了php在對象之外訪問其私有屬性private及保護(hù)屬性protected的方法,需要的朋友可以參考下
    2017-11-11
  • PHP自定義函數(shù)獲取搜索引擎來源關(guān)鍵字的方法

    PHP自定義函數(shù)獲取搜索引擎來源關(guān)鍵字的方法

    這篇文章主要介紹了PHP自定義函數(shù)獲取搜索引擎來源關(guān)鍵字的方法,涉及php針對來路頁面URL的分析與判斷技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2016-07-07
  • php調(diào)用nginx的mod_zip模塊打包ZIP文件

    php調(diào)用nginx的mod_zip模塊打包ZIP文件

    這篇文章主要介紹了php調(diào)用nginx的mod_zip模塊打包ZIP文件,需要的朋友可以參考下
    2014-06-06
  • PHP的runkit擴(kuò)展如何使用

    PHP的runkit擴(kuò)展如何使用

    PHP 運(yùn)行的時(shí)候,也就是部署完成后,我們是不能修改常量的值,也不能修改方法體內(nèi)部的實(shí)現(xiàn)的。也就是說,我們編碼完成后,將代碼上傳到服務(wù)器,這時(shí)候,我們想在不修改代碼的情況去修改一個(gè)常量的值是不行的。但是,runkit 擴(kuò)展卻可以幫助我們完成這個(gè)功能。
    2021-05-05
  • php插件功能實(shí)現(xiàn)方法介紹

    php插件功能實(shí)現(xiàn)方法介紹

    這篇文章主要介紹了php插件功能實(shí)現(xiàn)方法,主要包括php開發(fā)插件使用實(shí)例、應(yīng)用技巧、基本知識點(diǎn)總結(jié)和需要注意事項(xiàng),具有一定的參考價(jià)值,需要的朋友可以參考一下
    2022-11-11
  • Smarty模板學(xué)習(xí)筆記之Smarty簡介

    Smarty模板學(xué)習(xí)筆記之Smarty簡介

    Smarty是一個(gè)使用PHP寫出來的模板PHP模板引擎,是目前業(yè)界最著名的PHP模板引擎之一。它分離了邏輯代碼和外在的內(nèi)容,提供了一種易于管理和使用的方法,用來將原本與HTML代碼混雜在一起PHP代碼邏輯分離。
    2014-05-05
  • 解析php中獲取系統(tǒng)信息的方法

    解析php中獲取系統(tǒng)信息的方法

    本篇文章是對php中獲取系統(tǒng)信息的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • php防止用戶重復(fù)提交表單

    php防止用戶重復(fù)提交表單

    這篇文章主要介紹了解決php表單重復(fù)提交實(shí)現(xiàn)方法,需要的朋友可以參考下
    2015-11-11

最新評論

贵溪市| 荔浦县| 贵州省| 揭阳市| 波密县| 汾阳市| 隆林| 大石桥市| 巢湖市| 鄂尔多斯市| 历史| 江油市| 澄迈县| 卢氏县| 无为县| 佛学| 会理县| 孝感市| 木兰县| 邯郸市| 师宗县| 高青县| 鄂托克前旗| 河北区| 株洲市| 东港市| 铜梁县| 丰县| 正安县| 甘南县| 琼海市| 徐汇区| 达拉特旗| 新巴尔虎右旗| 固始县| 互助| 昌宁县| 牡丹江市| 景德镇市| 延寿县| 丘北县|