萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> php對mysql簡單讀取的實例

php對mysql簡單讀取的實例

   讀取mysql數據庫

  例。

 代碼如下  

<?php
    $link=mysql_connect("localhost","root","之前的管理員密碼");
    if(!$link) echo "沒有連接成功!";
    mysql_select_db("infosystem", $link); //選擇數據庫
    $q = "SELECT * FROM info"; //SQL查詢語句
    mysql_query("SET NAMES GB2312");
    $rs = mysql_query($q); //獲取數據集
    if(!$rs){die("Valid result!");}
    echo "<table>";
    echo "<tr><td>部門名稱</td><td>員工姓名</td><td>PC名稱</td></tr>";
    while($row = mysql_fetch_array($rs)) echo "<tr><td>$row[1]</td><td>$row[2]</td><td>$row[3]</td></tr>"; //顯示數據
    echo "</table>";
    mysql_free_result($rs); //關閉數據集
?>

  中文顯示亂碼問題

  當我們按照原來的方式通過PHP存取MySQL數據庫時,就算設置了表的默認字符集為utf8並且通過UTF-8編碼發送查詢,你會發現存入數據庫的仍然是亂碼。

  其實簡單的方法是通過phpMyAdmin來設置。

  設置下面幾項:

  1: 語言設置為 chinese (zh-utf-8)

  2: MySQL 字符集: UTF-8 Unicode (utf8)

  3: MySQL 連接校對: utf8_general_ci

  4: 新增數據庫和數據表的時候,整理項選擇 utf8_general_ci

  通過以上設置,在phpMyAdmin中操作和查詢的時候,中文字符都不會亂碼了。

  但是你會發現,在php程序中用以前的sql語句查詢出來的結果還是亂碼,問題就出在connection連接層上。

  解決方法是在成功連接數據庫之後,發送一句查詢語句:

 代碼如下  

1: $this->LinkID = mysql_connect($this->Host, $this->User, $this->Password);
2: mysql_query('SET NAMES 'utf8'', $this->LinkID);
或:

DEFINE ('LINK', mysql_connect (DB_HOST, DB_USER, DB_PASSWORD));
mysql_query("SET NAMES 'utf8'", LINK);

  gbk編碼的

 代碼如下  

$mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass);
mysql_query("SET NAMES 'GBK'");

copyright © 萬盛學電腦網 all rights reserved