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 />