前端之家收集整理的这篇文章主要介绍了
php – MySql查询中的随机值与分页,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在我的网页上有高级搜索,现在它的工作原理如下.当进行搜索时,随机结果会显示在内容页面上,现在此页面还包含分页,所以我的问题是每次访问者转到第1页时会出现不同的结果.是否可以使用分页,或者ordring总是随机的.
我正在使用像这样的查询
SELECT * FROM table ORDER BY RAND() LIMIT 0,20;
最佳答案
您应该使用
MysqL RAND的种子来获得一致的结果.在
PHP中,你做了一个
$paginationRandSeed = $_GET['paginationRandSeed']?
( (int) $_GET['paginationRandSeed'] ):
rand()
;
在MysqL中你使用那个种子
"SELECT * FROM table ORDER BY RAND(".$paginationRandSeed.") LIMIT 0,20"
当然,您需要在页面请求中传播初始种子.
祝好运,
阿林