PHP訪問MySQL幾種方法

Web數據庫工作的基本步驟:

(1)用戶瀏覽器發出HTTP請求,請求特定頁面。

(2)Web服務器接收到頁面請求後檢索該文件,將其傳遞給PHP引擎處理。

(3)PHP引擎解析腳本。腳本可能包括連接到數據庫和執行查詢命令。PHP啓動對MySQL服務器的連接並向服務器發送適當的查詢。

(4)MySQL服務器接收到數據庫查詢請求,開始查詢,並將結構返回給PHP引擎。

(5)PHP引擎完成腳本運行後,然後將該HTML返回給Web服務器。

(6)Web服務器再將HTML返回給客戶端瀏覽器,用戶就可以看到要查詢的內容。

其中對數據庫的操作大體又可分爲兩種方法:下面是分別用兩種方法查詢數據庫中的數據。

1、面向過程方法

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>數據庫</title>
<style type="text/css">
table,th,td{
	border:#000 solid 1px;
}
table{
	width:980px;
	margin: auto;
	font-size:14px;
}
</style>
</head>

<body>
<?php
/*面向過程方法*/

//1、連接數據庫mysql_connect()函數將要棄用
	@$link=mysql_connect('localhost','root','')or die('連接失敗');
//2-1、選擇數據庫:方法一
	//mysql_query('use data') or die('數據庫選擇失敗');
//2-2、 選擇數據庫:方法二
	mysql_select_db('data',$link) or die('數據庫選擇失敗');
//3、設置mysql客戶端字符編碼
	mysql_query('set names utf8');
//4、獲取product表的數據
	$rs=mysql_query('select * from product');	
?>
<table>
<tr>
    <th>編號</th>
    <th>商名稱品</th>
    <th>規格</th>
    <th>價格</th>
    <th>庫存</th>
    <th>圖片</th>
    <th>網址</th>    
</tr>
<?php
	while($row=mysql_fetch_row($rs))
	{
		echo '<tr>';
		echo '<td>'.$row[0].'</td>';
		echo '<td>'.$row[1].'</td>';
		echo '<td>'.$row[2].'</td>';
		echo '<td>'.$row[3].'</td>';
		echo '<td>'.$row[4].'</td>';
		echo '<td><img src="'.$row[5].'" /></td>';
		echo '<td>'.$row[6].'</td>';
		echo '</tr>>';
	 }
	/* while($row=mysql_fetch_array($rs))//既支持索引數組又支持關聯數組
	{
		echo '<tr>';
		echo '<td>'.$row[0].'</td>';
		echo '<td>'.$row[1].'</td>';
		echo '<td>'.$row[2].'</td>';
		echo '<td>'.$row[3].'</td>';
		echo '<td>'.$row[4].'</td>';
		echo '<td><img src="'.$row[5].'" /></td>';
		echo '<td>'.$row[6].'</td>';
		echo '</tr>';
	 }*/
	 mysql_free_result($rs);
	 mysql_close($link);
?>
</table>

</body>
</html>

2、面向對象方法

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>數據庫</title>
<style type="text/css">
table,th,td{
	border:#000 solid 1px;
}
table{
	width:980px;
	margin: auto;
	font-size:14px;
}
</style>
</head>
<body>
<?php
/*面向對象方法*/
    @$db= new mysqli('localhost','root','','data');
	if(mysqli_connect_error())
	{
		echo 'Error:Could not connect to database!';
		exit;
	}
	$db->query('set names utf8');
	$query="select * from product";
	$result=$db->query($query);
	$num_results=$result->num_rows;
	
?>
<table>
<tr>
	<th>編號</th>
    <th>商名稱品</th>
    <th>規格</th>
    <th>價格</th>
    <th>庫存</th>
    <th>圖片</th>
    <th>網址</th>    
</tr>
<?php	 
	 for($i=0;$i<$num_results;$i++)
	{
		$row=$result->fetch_row();
		echo '<tr>';
		echo '<td>'.$row[0].'</td>';
		echo '<td>'.$row[1].'</td>';
		echo '<td>'.$row[2].'</td>';
		echo '<td>'.$row[3].'</td>';
		echo '<td>'.$row[4].'</td>';
		echo '<td><img src="'.$row[5].'" /></td>';
		echo '<td>'.$row[6].'</td>';
		echo '</tr>';
	}
	$result->free();
	$db->close();
?>
</table>

</body>
</html>


運行結果:



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章