php做简单的论坛教程,[php] 我的微型论坛的简单教程[已完成]第5/8页

4、好了,上面数据库也建立了,PHP连接数据库我们也做好了。那么,我们该学习对MYSQL数据库进行操作了吧:

select 查询;

update 更新;

insert 插入;

delete 删除;

如果你有ASP或其他语言基础的话,我想理解应该很easy吧!

那么第一步,从首页开始:读取数据库中的信息。首页主要是循环显示forums中的所有论坛版块。对于有基础的人来说,查询语句很容易:

$sql="select * from forums";

?>

那么,如何来执行这个查询语句呢?PHP中用mysql_query()函数来执行SQL语句。这里要注意的是:mysql_query()函数来执行SQL语句时,如果执行的是一个SELECT语句,执行后返回一个INT型的标识,如果是非SELECT语句(INSERT,UPDATE等)返回的是boolean型的数据。所以有ASP基础的同学不要把这里认为成已经成功得到记录集。我们可以先来看看ASP:

sql="select * from forums"

rs.open sql,conn,1,1

do while not rs.eof

response.write rs("***")

rs.movenext

loop

%>

如果得到了数据,直接rs("***")就可以得到想要的数据了。但是PHP中这里,执行完mysql_query()函数,并没有得到最终我们想要的数据。还需要使用其他函数来获取最终数据,我经常使用mysql_fetch_array()和mysql_fetch_row()来获取查询结果。这两个函数操作的对象都是刚才mysql_query()执行后的结果。所以,我这样写:

require("conn.php");    //先把conn.php引入,目的就是打开数据库连接

$sql="select * from forums";

$result=mysql_query($sql);

while($rs=mysql_fetch_array($result)){

echo "论坛:".$rs["forum_name"]."";

}

?>

这样运行,页面没有任何输出,因为我们刚建立的数据库中没有任何数据!那么,我希望让论坛更加人性化,假如没有论坛版块应该输出“对不起,论坛尚在建设中……”的字样应该怎么办??mysql_num_rows()可以得到结果数目,mysql_result()也可以。

mysql_num_rows(int result)用来获取查询结果数目。参数result是mysql_query()等返回的结果标识;

mysql_result(int resule,int row)用来获取查询记录集,参数result是mysql_query()等返回的结果标识,row是要获取记录的行号;

代码如下:

require("conn.php");

$sql="select * from forums";

$result=mysql_query($sql);

$num=mysql_num_rows($result);

if($num>0){

while($rs=mysql_fetch_array($result)){

echo "论坛:".$rs["forum_name"]."";

}

}else{

echo "对不起,论坛尚在建设中……";

}

/* 或者你可以这样写

$sql="select count(*) from forums";

$num=mysql_result(mysql_query($sql),0);

$sql="select * from forums";

$result=mysql_query($sql);

或者这样写

$sql="select count(*) as num from forums";

$result=mysql_query($sql);

$num=mysql_fetch_array["num"];

*/

?>

运行结果如下图:

2007531195154189.gif

HOHO~~~~~,能够读取数据了,那下面我们该美化一下我们的首页了吧,用DW吧^@^。下面是首页论坛列表的表格在DW中(我美工不匝地,望大家先不要扔砖头……):

2007531195154288.gif

代码如下:

require("conn.php");

……

?>

论坛列表
状态论坛最后更新

$sql="select * from forums";

$result=mysql_query($sql);

$num=mysql_num_rows($result);

if($num>0){

while($row=$db->db_fetch_array($result)){

?>

<?php echo "
".$row["forum_name"]."".$row["forum_description"] ?>

}

}else{

echo "

对不起,论坛尚在建设中……";

}

close_db();    //调用close_db()函数,关闭连接,释放系统资源

?>

运行结果如下图:

2007531195155702.gif

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值