$rand_number = rand(1,$count_number);
select * from table limit $rand_number,1
select * from table limit $rand_number,1
解决方案 »
- Post 接收HTML内容数据后显出错
- 如何实现多种条件组合的搜索排序
- 请问大家都用哪些版本控制软件?
- 付费求一段php代码,支持淘宝交易
- 要用Linux+Apache+PHP+MySQL来架设服务器,各用什么版本最好。
- waterproof PHPEdit 如何配置"自动缩进"功能?
- 这样的功能PHP实现不了吗?很简单的功能啊!!!!!!!我找遍了论坛没有找到实现的!!!
- 来瞄一下,这样子的权限分组表有没有什么不足?
- 通过web连接mysql数据库的错误,大侠们帮帮我!发表意见的就有分!!
- 从MSSSQL里读出来的DATETIME类型的字段怎么正常表示出来?
- 一个关于mysql连接关闭的疑问
- 如何很好地实现注销功能~~
接着 srand((double) microtime() * 100000)
$image_list = array_rand($images, 5);仅供参考而已
你可以用file_exists()来校验附件是否存在,如果你的附件表里存的是路径的话。
select * from table_name order by rand() limit 5
不知道这样如何?
select * from table limit $rand_number,5
忘记说明了
$count_number 是统计出数据库中最近后一条记录的 ID
这样的话如果得到$rand_number正好是对后一个ID呢,那么怎么可能得到5条记录呀?
id是自增编号
select * from table limit $rand_number,5
5就是取 5 条数据
1、如下:
mysql> select attachmentid from vbb_attachment;
+--------------+
| attachmentid |
+--------------+
| 19 |
| 20 |
| 21 |
| 22 |
| 24 |
| 25 |
| 48 |
| 49 |
| 50 |
| 51 |
| 52 |
| 53 |
+--------------+
12 rows in set (0.05 sec)
mysql> select max(attachmentid) from vb_attachment;
+-------------------+
| max(attachmentid) |
+-------------------+
| 53 |
+-------------------+
1 row in set (0.00 sec)
因此,这样:
mysql> select attachmentid from vb_attachment limit 53,5;
Empty set (0.00 sec)
所以也就是说,由于我的ID不是连续的,由于附件可能有删除的,所以ID将会出现不连续,比如:1,3,14,34等
2、如下:
总共有12个记录,那么:
mysql> select attachmentid from vb_attachment limit 10,5;
+--------------+
| attachmentid |
+--------------+
| 52 |
| 53 |
+--------------+
2 rows in set (0.00 sec)
这样的话,也就是说如果虽然指定要5个记录,但是由于$rand_number比较靠后,可能取不了5个记录。谢谢!