标签:php mysql pagination
我有一个分页评论系统,每页10个.我想对评论进行永久链接.我希望能够让脚本找出评论所在的页面,而无需指定页码,也不需要过多的查询或处理.因此,例如,第5页上的评论链接将在评论页面5上打开浏览器并#scrolled到评论(而不是在其自己的页面上显示评论).
我曾经想过使用2个mysql查询,一个SELECT所有CommentId然后php array_search来查找结果中的位置,从中我可以计算它将在哪个页面上.第二个查询将获得所需的注释页面.这似乎效率很低,尤其是如果有很多评论需要提取.
任何人都可以提出更简单或更有效的方法吗?
解决方法:
使用SQL可以很容易地完成它,假设comment_id是某种形式的自动递增数字,这应该返回确切的页面:
SELECT FLOOR(COUNT(*)/$comments_per_page) FROM COMMENTS
WHERE ENTRY_ID = $entry_id AND comment_id < $comment_id;
当然,这假设“平坦的评论”(没有父子关系).显然,$comments_per_page是每个页面上显示的评论数量(这可能只是一个常量),$entry_id指的是发表评论的博客/论坛帖子,$comment_id是您要查找的评论.
标签:php,mysql,pagination 来源: https://codeday.me/bug/20190826/1729548.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。