汗!我还是第一次看到把页面写进数据库的。两个表就足够了。一个表A:id, admin(用户) 另一个表B:id,adminid(用户ID),content(留言内容) 两个表加起来有很多种查询方式。查询所有留言:select * from B倒叙查询所有留言 :select * from B order by id desc限量查询留言:select * from B limit 0,20;limit 0,20 代表查询从第一条到20条。查询某个会员的留言:select * from B where adminid='$adminid' 倒数查询:select * from B where adminid='$adminid' order by id descorder by id desc(表示倒数) 至于分页,根本不需要写进数据库。而是在前台用程序计算。程序思想是:1、计算有多少条留言。假设要求查询的有85条。$all=85;2、每页要展示多少条。假设为10条。$size=103、算出来 85/10,一共是9页。$allpage=9;4、计算每一页查询开始,是第几条.$start=($当前页-1)*$size.测试是不是对的。当前页是第一页的时候,$start=(1-1)&10=0,也就是从第一条开始显示。0是起点当前页是第二页时,$start=(2-1)&10=10,也就是从第11条开始查询。结合前面的限量查询:可以得出每页的数据查询是:select * from B limit '$start','$size';啪啪啪就出来了吗,不会的搜索一下PHP分页看看。至于显示楼层,还要计算一下。用ID时不准的,也不好排序。比如这样用 select * from B limit '$start','$size';for($i=1;$i<=total;$i++){ echo 内容 .$i.楼; } 到此为止。最好找本入门的书 仿一下人家的分页.还有基本的知识SQL语言啊,包括 mysql的基本功。
select * from 留言表 where 页面='1页' 这里的一页 应该是指 你的某个html页面 用户点击进入这个页面,就查询出来这个页面所有的留言 根据分页的方法,实现每一页显示10条或者20条记录 像select * from 留言表 where 页面='1页' limit 0,10之类的至于楼层的显示,可以在输出的时候再搞个变量控制一下,不一定非要用数据库的自增字段
id 留言内容 用户 页面 1 内容1 admin show01.php 2 内容2 admin show01.php 3 内容3 admin show01.php 4 内容4 admin show01.php 5 内容1 ac show02.php 6 内容2 ad show02.php ... 设计成这样的表结构,可以实现你要的效果
我知道是这样设计,所以我在后面那个网页变量上采用了UID的字段来加以区分。字段可以简单化为ID TEXT NAME IP UID 这样
另一个表B:id,adminid(用户ID),content(留言内容)
两个表加起来有很多种查询方式。查询所有留言:select * from B倒叙查询所有留言 :select * from B order by id desc限量查询留言:select * from B limit 0,20;limit 0,20 代表查询从第一条到20条。查询某个会员的留言:select * from B where adminid='$adminid' 倒数查询:select * from B where adminid='$adminid' order by id descorder by id desc(表示倒数)
至于分页,根本不需要写进数据库。而是在前台用程序计算。程序思想是:1、计算有多少条留言。假设要求查询的有85条。$all=85;2、每页要展示多少条。假设为10条。$size=103、算出来 85/10,一共是9页。$allpage=9;4、计算每一页查询开始,是第几条.$start=($当前页-1)*$size.测试是不是对的。当前页是第一页的时候,$start=(1-1)&10=0,也就是从第一条开始显示。0是起点当前页是第二页时,$start=(2-1)&10=10,也就是从第11条开始查询。结合前面的限量查询:可以得出每页的数据查询是:select * from B limit '$start','$size';啪啪啪就出来了吗,不会的搜索一下PHP分页看看。至于显示楼层,还要计算一下。用ID时不准的,也不好排序。比如这样用
select * from B limit '$start','$size';for($i=1;$i<=total;$i++){
echo 内容 .$i.楼;
}
到此为止。最好找本入门的书 仿一下人家的分页.还有基本的知识SQL语言啊,包括
mysql的基本功。
这里的一页 应该是指 你的某个html页面
用户点击进入这个页面,就查询出来这个页面所有的留言
根据分页的方法,实现每一页显示10条或者20条记录
像select * from 留言表 where 页面='1页' limit 0,10之类的至于楼层的显示,可以在输出的时候再搞个变量控制一下,不一定非要用数据库的自增字段
1 内容1 admin show01.php
2 内容2 admin show01.php
3 内容3 admin show01.php
4 内容4 admin show01.php
5 内容1 ac show02.php
6 内容2 ad show02.php
...
设计成这样的表结构,可以实现你要的效果
我知道是这样设计,所以我在后面那个网页变量上采用了UID的字段来加以区分。字段可以简单化为ID TEXT NAME IP UID 这样
书是必须读的,看你理解了多少再开始做就不会闹这样的笑话。
至于在这里得到多少帮助,要看你提问的智慧。
现在只剩下楼的显示了,因为以前的自增ID不能当楼来使用了,所以只能这样id 留言内容 用户 页面
1 内容1 admin show01.php
2 内容2 admin show01.php
3 内容3 admin show01.php
4 内容4 admin show01.php
5 内容1 ac show02.php
6 内容2 ad show02.php
select * from table limit 0,10;
select * from table limit 11,10;
select * from table limit 21,10;页面显示结果的时候,将0,11,21像这样的变量拿到
在循环里累加
这样每层楼就可以按照顺序出来了
echo "<tr><td>楼层</td><td>内容</td></tr>";
foreach($result as $value)
{
echo "<tr align=center><td>".++$num."</td><td>{$value[1]}</td<tr>";
}
<p><font color="#0000FF"> <?=$row[1]?> 的发言: </font> 
<font color="#778899">
<?=$row[3]?> </font>  这些显示代码的前面吗?
---------------------------------------------------------------------------------
46 | 9 | 大家好 |0 | 0
---------------------------------------------------------------------------------
47 | 7 | 我是sibang |0 | 0
---------------------------------------------------------------------------------
48 | 11 | 对,你是sibang |1 | 47
---------------------------------------------------------------------------------
49 | 7 | 你怎么知道的? |2 | 47
---------------------------------------------------------------------------------
50 | 11 | 刚听你说的 |3 | 47
看完上边的表结构,你应该就大体明白了吧!
假如要显示我的留言,那就
select * from 表 wehere 留言者id=7
此时会取得编号47这个id
假如要显示我的留言下边所有人的回复,那就
select * from 表 wehere 留言类型=47 order by 楼层序号 asc
假如要显示我的留言,那就
select * from 表 wehere 留言者id=7 and 留言类型=0