前言:
前邊介紹了php腳本獲取並打印輸出html提交的數據,本文將介紹php腳本訪問查詢MySql數據庫。
示例代碼:
1 <style> 2 td{width:100px;}/*我的存在只為證明php文件中php腳本外邊可以定義style樣式*/ 3 th{background: #22AAFF; text-align: left;color: #fff;;} 4 </style> 5 <?php 6 header("Content-Type:text/html;charset=utf8"); 7 8 $link=mysql_connect("localhost","root","root"); 9 mysql_select_db("test", $link); //選擇數據庫 10 11 $q = "SELECT * FROM user_info"; //SQL查詢語句 12 mysql_query("SET NAMES utf8");//解決中文亂碼問題 13 $rs = mysql_query($q); //獲取數據集 14 if(!$rs){die("Valid result!");} 15 echo "<table>"; 16 echo "<tr><th>編號</th><th>姓名</th><th>手機號碼</th></tr>"; 17 while($row = mysql_fetch_array($rs)) echo "<tr><td>$row[0]</td><td>$row[1]</td><td>$row[2]</td></tr>"; //顯示數據 18 echo "</table>"; 19 mysql_free_result($rs); //關閉數據集 20 ?>
示例解析:
1. header() 函數向客戶端發送原始的 HTTP 報頭。
1 //定義html頁面,並設置編碼 2 header("Content-Type:text/html;charset=utf8"); 3 4 //導出excel表格時設置文檔類型和導出文件擴展名 5 header ( "Content-type:application/vnd.ms-excel" ); 6 header ( "Content-Disposition:filename=csat.xls" );
2. 連接數據庫:
$link=mysql_connect("localhost","root","root"); mysql_select_db("test", $link); //選擇數據庫
示例解析:
連接數據庫 mysql_connect(主機名,用戶名,密碼);
選擇數據庫 mysql_select_db(數據庫名稱, 數據庫連接);
3. 查詢數據表,獲取數據集:
1 $sql = "SELECT * FROM user_info"; //SQL查詢語句 2 12 mysql_query("SET NAMES utf8");//解決中文亂碼問題 3 13 $result = mysql_query($sql); //獲取數據集
4.輸出表格
1 echo "<table>"; 2 echo "<tr><th>編號</th><th>姓名</th><th>手機號碼</th></tr>"; 3 echo "<tr><td>1</td><td>張三</td><td>13888888888</td></tr>"; 4 echo "<tr><td>1</td><td>張三</td><td>13888888888</td></tr>"; 5 echo "</table>";
5. 循環輸出數據
1 while($row = mysql_fetch_array($rs)) echo "<tr><td>$row[0]</td><td>$row[1]</td><td>$row[2]</td></tr>"; //顯示數據
示例解析:
$row=mysql_fetch_array($rs); 讀取數據集並返回數組
while($row=mysql_fetch_array($rs)){//循環讀取數組中的數據
......
}
注意:循環讀取數據集中的內容,一定要使用While循環。
注意事項:
php5.5已廢除mysql擴展,需要改為mysqli或PDO,示例代碼如下:
1 //PDO方式 2 $dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass); 3 //mysqli方式 4 $link = mysqli_connect( 5 'localhost', /* The host to connect to 連接MySQL地址 */ 6 'root', /* The user to connect as 連接MySQL用戶名 */ 7 'root', /* The password to use 連接MySQL密碼 */ 8 'test'); /* The default database to query 連接數據庫名稱*/ 9 if(!$link) echo "沒有連接成功!";
當然,前邊的用法仍然可用,大部分web主機默認還是支持的,如果web虛擬主機默認支持的php版本再5.5之上,那么可以設置低版本的php,如下,使用jspStudy設置不同的Php版本: