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

SQL server不支持utf8 php卻用utf8的矛盾問題解決方法

 更新時間:2020年03月12日 00:08:35   投稿:mdxy-dxy  
這篇文章主要介紹了SQL server不支持utf8 php卻用utf8的矛盾問題解決方法,需要的朋友可以參考下

核心代碼

function convert2utf8($string)
  {
    return iconv("gbk","utf-8",$string);
  }
  function convert2gbk($string)
  {
    return iconv("utf-8","gbk",$string);
  }

當插入數(shù)據(jù),或修改數(shù)據(jù)的時候,把utf-8,轉為gbk,存入數(shù)據(jù)庫。

當獲取數(shù)據(jù)的時候,將數(shù)據(jù)轉為utf-8。

這個方法在底層的數(shù)據(jù)中設計,上層調(diào)用即可。

<?php
class dao_dao extends Zend_Db_Table {

  public function returnDb(){
    return $db = &$this->getAdapter();
  }

  public function getData($table,$where = false, $order = 'id ASC', $pagesize = false, $offset = false, $count = false, $from = false, $join = false, $group = false) {
    $db = &$this->getAdapter();
    $select = $db->select();
    
    if ($where && is_array($where)) {
      foreach ($where as $key => $val) {
        //print_r($where);
        if($val['type']==1){
          $select->where($key, $val['val']);
        }else{
          $select->orwhere($key, $val['val']);
        }
        
      } 
    }

    if (!$from)
      $from = '*';
    //echo $select."<br/>";
    if ($pagesize) {
      $select->limit($pagesize, $offset);
    }
    //echo $select."<br/>";
    if (is_array($order)) {
      foreach ($order as $value) {
        $select->order($value);
      }
    } else {
      $select->order($order);
    }
    //echo $select."<br/>";
    $select->from($table, $count ? "COUNT(".$table.".id)" : $from);
    
    if (is_array($group)) {
      foreach ($group as $key => $val) {
        $select->group($val);
      }

      if ($count) {
        $result = $db->fetchAll($select);
        //echo $select."<br/>";
        return $result;
      }
    } else {
      if ($count) {
        $result = $db->fetchOne($select);
        //echo $select."<br/>";
        return $result;
      }
    }
    if (is_array($join)) {
      foreach ($join as $key => $val) {
        $select->join($key, $val[0], $val[1]);
      }
    }

    //echo $select."<br/>";

    //echo $select;exit;
    
    $result = $db->fetchAll($select);
    foreach ($result as $key => $value) {
      foreach ($value as $key2 => $value2) {
        $result[$key][$key2] = $this->convert2utf8($value2);
      }
    }
    return $result;
  }
  
  


  /**
   * 向表中插入數(shù)據(jù)
   * array $adata 數(shù)據(jù)
   * string $table 表名
   * int $insterid 是否需要返回插入ID
   * @return true or false or int
   */
   // @bianding 2013.11.04 更改了pdo中mssql.php的lastInsertId()函數(shù)
   // @bianding 2013.11.04 經(jīng)測試 mssql.php中的lastInsertId()函數(shù)中的SELECT兩種方式都行
  function SaveData($adata, $table, $insterid = 0, $aLog = false) {
    $db = & $this->getAdapter();
    foreach ($adata as $key => $value) {
      $adata[$key] = $this->convert2gbk($value);
    }
    if ($db->insert($table, $adata)) {
      //var_dump($db->getProfiler());
      $insertedID = $db->lastInsertId();      
      if ($insterid) {
        return $insertedID;
      } else {
        return TRUE;
      }
    } else {
      return false;
    }
  }

  /**
   * 刪除表中數(shù)據(jù)
   * 
   * @param string $table 表名
   * @param string $where 'id ='.$id 條件
   * @return true or false
   */
  function DelData($table, $where, $aLog = false) {
    $db = & $this->getAdapter();
    if ($db->delete($table, $where)) {
      return TRUE;
    } else {
      return FALSE;
    }
  }

  /**
   * 更新表中數(shù)據(jù)
   *
   * @param string $table
   * @param array $adata
   * @param string $where 'id ='.$id
   * @return true or false
   */
  function UpdateData($table, $adata, $cond, $aLog = false) {
    $db = & $this->getAdapter();
    foreach ($adata as $key => $value) {
      $adata[$key] = $this->convert2gbk($value);
    }
    if ($db->update($table, $adata, $cond)) {
      return TRUE;
    } else {
      return false;
    }
  }


  public function clearTable($table) {
    $db = &$this->getAdapter();
    $result = $db->query('TRUNCATE TABLE ' . $table);
  }

  public function executeSql($strSql) {
    $db = &$this->getAdapter();
    $result = $db->query($strSql);
  }
  
  function convert2utf8($string)
  {
    return iconv("gbk","utf-8",$string);
  }
  function convert2gbk($string)
  {
    return iconv("utf-8","gbk",$string);
  }
}

sqlserver 建庫指定utf-8 修改庫為utf-8編碼

CREATE DATABASE paas COLLATE Chinese_PRC_CI_AS
GO
ALTER DATABASE paas COLLATE Chinese_PRC_CI_AS
GO

讓ASP和MS SQL SERVER支持UTF-8編碼存儲多國語言文字

近日在ASP+MS SQL存儲UTF-8編碼內(nèi)容的時候,出現(xiàn)亂碼的情況,經(jīng)過查詢發(fā)現(xiàn)要使SQL SERVER支持UTF-8編碼格式,必須做一些修改才可以。

1、確保ASP頁面是UTF-8編碼的,并在ASP頁面頂部聲明中使用<%@ LANGUAGE = VBScript CodePage = 65001%>進行編碼聲明

2、輸出的HTML頁面中聲明字符集:<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

3、在進行URL參數(shù)傳遞的時候,要使用Server.URLEncode()方法進行編碼

4、使用JS進行URL參數(shù)傳遞中文的時候,要使用escape進行編碼

5、在將UTF-8編碼的內(nèi)容存入SQL SERVER數(shù)據(jù)庫中的時候,要存儲的字段必須設置為NVARCHAR類型,SQL語句要在內(nèi)容前加N表示,如insert into user (name) values (N´&username&´),除id意外的字段都需要加N。

相關文章

  • PHP概率計算函數(shù)匯總

    PHP概率計算函數(shù)匯總

    做項目的有時會弄個活動什么的,來讓用戶參加,既吸引用戶注冊,又提高網(wǎng)站的用戶活躍度。同時參加的用戶會獲得一定的獎品,有100%中獎的,也有按一定概率中獎的,大的比如中個ipad,小的中個Q幣。那么我們在程序里必然會設計到算法,即按照一定的概率讓用戶獲得獎品。
    2015-09-09
  • PHP使用Curl實現(xiàn)模擬登錄及抓取數(shù)據(jù)功能示例

    PHP使用Curl實現(xiàn)模擬登錄及抓取數(shù)據(jù)功能示例

    這篇文章主要介紹了PHP使用Curl實現(xiàn)模擬登錄及抓取數(shù)據(jù)功能,結合實例形式分析了php使用curl進行登陸、驗證、cookie操作與數(shù)據(jù)抓取等相關實現(xiàn)技巧,需要的朋友可以參考下
    2018-04-04
  • PHP實現(xiàn)二維數(shù)組按照指定的字段進行排序算法示例

    PHP實現(xiàn)二維數(shù)組按照指定的字段進行排序算法示例

    這篇文章主要介紹了PHP實現(xiàn)二維數(shù)組按照指定的字段進行排序算法,涉及php針對數(shù)組的遍歷、排序等相關操作技巧,需要的朋友可以參考下
    2019-04-04
  • 如何在PHP環(huán)境中使用ProtoBuf數(shù)據(jù)格式

    如何在PHP環(huán)境中使用ProtoBuf數(shù)據(jù)格式

    這篇文章主要介紹了如何在PHP環(huán)境中使用ProtoBuf數(shù)據(jù)格式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-06-06
  • 怎樣開啟phpStudy服務器

    怎樣開啟phpStudy服務器

    這篇文章主要介紹了怎樣開啟phpStudy服務器問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • PHP5全版本繞過open_basedir讀文件腳本漏洞詳細介紹

    PHP5全版本繞過open_basedir讀文件腳本漏洞詳細介紹

    這篇文章主要介紹了PHP5全版本繞過open_basedir讀文件腳本漏洞詳細介紹,這個漏洞很久之前(大概5年前)被提出來了,到現(xiàn)在的最新版本中依然存在,需要的朋友可以參考下
    2015-01-01
  • php設計模式 Interpreter(解釋器模式)

    php設計模式 Interpreter(解釋器模式)

    php設計模式 Interpreter(解釋器模式),需要的朋友可以參考下。
    2011-06-06
  • php實現(xiàn)等比例不失真縮放上傳圖片的方法

    php實現(xiàn)等比例不失真縮放上傳圖片的方法

    這篇文章主要介紹了php實現(xiàn)等比例不失真縮放上傳圖片的方法,結合實例形式分析了php基于自定義函數(shù)實現(xiàn)等比例不失真縮放上傳圖片的具體功能定義與使用方法,需要的朋友可以參考下
    2016-11-11
  • PHP文件上傳原理簡單分析

    PHP文件上傳原理簡單分析

    PHP文件上傳原理簡單分析,學習php的朋友可以參考下,確實比asp的要簡單很多。
    2011-05-05
  • PHP CURL函數(shù)庫

    PHP CURL函數(shù)庫

    PHP中的CURL函數(shù)庫集合
    2008-10-10

最新評論

丹江口市| 托克逊县| 广灵县| 得荣县| 阿拉善左旗| 修文县| 延川县| 杨浦区| 中阳县| 德安县| 凤阳县| 老河口市| 神池县| 交城县| 柳江县| 安阳市| 慈溪市| 大城县| 安西县| 高要市| 桦甸市| 泸定县| 高雄县| 浠水县| 二手房| 巫山县| 景洪市| 普兰店市| 万载县| 贵州省| 湾仔区| 政和县| 会宁县| 仪征市| 衡阳县| 潼关县| 元朗区| 黔南| 克东县| 胶州市| 成安县|