php讀取mysql的簡單一實例_php執行個體

來源:互聯網
上載者:User

複製代碼 代碼如下:

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

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.