這段程式碼的功能是:
連接到一個url 位址為localhost 、 連接埠為3306 的mysql伺服器上。 mysql伺服器的帳號是"root",密碼是"9999"。 mysql 伺服器上有一個資料庫ok , 資料庫裡有一個表abc。表abc 總共為兩列,列名分別是"id" 和"name" ,將abc 裡的所有資料讀出來。
以下為引用的內容:
<?
$dbh = @mysql_connect("localhost:3306","root","9999");
/* 定義變數dbh , mysql_connect()函數的意思是連接mysql資料庫, "@"的意思是屏蔽報錯*/
if(!$dbh){die("error");}
/* die()函數的意思是將括號裡的字串送到瀏覽器併中斷PHP程序(Script)。括號裡的參數為欲送出的字符串。 */
@mysql_select_db("ok", $dbh);
/* 選擇mysql伺服器裡的一個資料庫,這裡選的資料庫名為ok */
$q = "SELECT * FROM abc";網頁教學網http://www.webjx.com
/* 定義變數q, "SELECT * FROM abc"是一個SQL語句,意思是讀取表abc中的資料*/
?>
<br />
<!--========= 方法一 =========-->
<br />
<?
$rs = mysql_query($q, $dbh);
/* 定義變數rs ,函數mysql_query()的意思是:送出query 字符串供MySQL 做相關的處理或執行.由於php是從右往左執行的,所以,rs的值是伺服器運行mysql_query()函數後返回的值*/
if(!$rs){die("Valid result!");}
echo "<table>";
echo "<tr><td>ID</td><td>Name</td></tr>";
while($row = mysql_fetch_row($rs)) echo "<tr><td>$row[0]</td><td>$row[1]</td></tr>";
/* 定義量變(數組)row,並利用while循環,把資料一一寫出來.
函數mysql_fetch_row()的意思是:將查詢結果$rs單列拆到陣列變數中.
$row[0] 和$row[1] 的位置可以換*/
echo "</table>";
?>
<br />
<!--========= 方法二 =========-->
<br />
<?
$rs = mysql_query($q, $dbh);
while($row = mysql_fetch_object($rs)) echo "$row->id $row->name <br />";
/* id和name可以換位置*/
?>
<br />
<!--========= 方法三 =========-->
<br />
<?
$rs = mysql_query($q, $dbh);
while($row = mysql_fetch_array($rs)) echo "$row[id] $row[name] <br />";
/* id和name可以換位置*/
?>
<!--========= 方法三最快 =========-->
<?
@mysql_close($dbh);
/* 關閉到mysql資料庫的連線*/
?>