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>