如何根据UID的字段的值来显示留言?300个带留言功能的网页
听说不用建立300个数据表和数据库,听说只需要修改要显示的一个标示就可以了,但是没有人告诉我具体方法。
大家都是纸上谈兵。毫无意义(好几次都是白白浪费分去结贴了)。
每一个留言不就是留言表中的一条记录而已吗?
一张表可以有多条留言记录啊!
这样的结构
id 留言内容 用户 页面
1 内容1 admin 1页
2 内容2 ac 2页
3 内容3 ad 2页
这样不就第一张页面一条留言,
select * from 留言表 where 页面='1页'
这样子读出第一页的留言内容
//这样写鬼知道是什么意思。
//为什么读出来了?读出了什么内容?
//怎么读出来的,怎么显示的。[重点],
300个显示的网页
show01.php
show02.php
show03.php
show04.php
show05.php
...
...
...
show300.php
还有个问题就是ID的楼层显示,大家都知道ID是可以自己增加值的,
也就是会出现顺序和倒序的显示,1楼2楼3楼4楼5楼这样,但是以上那个数据库输入法好象有问题,比如show01页显示了1楼2楼3楼的ID了,
在show02页就显示出4楼5楼6楼了,难道非要每个留言安排一个数据表么?
这样才保证输出的顺序么
大家都是纸上谈兵。毫无意义(好几次都是白白浪费分去结贴了)。
每一个留言不就是留言表中的一条记录而已吗?
一张表可以有多条留言记录啊!
这样的结构
id 留言内容 用户 页面
1 内容1 admin 1页
2 内容2 ac 2页
3 内容3 ad 2页
这样不就第一张页面一条留言,
select * from 留言表 where 页面='1页'
这样子读出第一页的留言内容
//这样写鬼知道是什么意思。
//为什么读出来了?读出了什么内容?
//怎么读出来的,怎么显示的。[重点],
300个显示的网页
show01.php
show02.php
show03.php
show04.php
show05.php
...
...
...
show300.php
还有个问题就是ID的楼层显示,大家都知道ID是可以自己增加值的,
也就是会出现顺序和倒序的显示,1楼2楼3楼4楼5楼这样,但是以上那个数据库输入法好象有问题,比如show01页显示了1楼2楼3楼的ID了,
在show02页就显示出4楼5楼6楼了,难道非要每个留言安排一个数据表么?
这样才保证输出的顺序么
作者: SLKBINBIN 发布时间: 2011-06-15
汗!我还是第一次看到把页面写进数据库的。
两个表就足够了。一个表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 desc
order by id desc(表示倒数)
至于分页,根本不需要写进数据库。
而是在前台用程序计算。
程序思想是:
1、计算有多少条留言。假设要求查询的有85条。$all=85;
2、每页要展示多少条。假设为10条。$size=10
3、算出来 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的基本功。
两个表就足够了。一个表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 desc
order by id desc(表示倒数)
至于分页,根本不需要写进数据库。
而是在前台用程序计算。
程序思想是:
1、计算有多少条留言。假设要求查询的有85条。$all=85;
2、每页要展示多少条。假设为10条。$size=10
3、算出来 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的基本功。
作者: zilingzhi 发布时间: 2011-06-15
引用楼主 slkbinbin 的回复:
听说不用建立300个数据表和数据库,听说只需要修改要显示的一个标示就可以了,但是没有人告诉我具体方法。
大家都是纸上谈兵。毫无意义(好几次都是白白浪费分去结贴了)。
每一个留言不就是留言表中的一条记录而已吗?
一张表可以有多条留言记录啊!
这样的结构
id 留言内容 用户 页面
1 内容1 ……
听说不用建立300个数据表和数据库,听说只需要修改要显示的一个标示就可以了,但是没有人告诉我具体方法。
大家都是纸上谈兵。毫无意义(好几次都是白白浪费分去结贴了)。
每一个留言不就是留言表中的一条记录而已吗?
一张表可以有多条留言记录啊!
这样的结构
id 留言内容 用户 页面
1 内容1 ……
多看看数据库的书
作者: jdalove 发布时间: 2011-06-15