php對mysql簡單讀取的例項

weixin_34402090發表於2014-01-16

讀取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>員工姓名111Cn.net</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); //關閉資料集
?>
 

更多詳細內容請檢視:http://www.111cn.net/phper/php-database/57069.htm

中文顯示亂碼問題

當我們按照原來的方式通過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'");
 

相關文章