background image

PHP 语言读取数据库详解

这段代码的功能是:

 

连接到一个 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";
/* 定义变量 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 />