0

我是 php 的新手,如果这是一个蹩脚的问题,我很抱歉,但我真的很想知道如何解决这个我无法摆脱的问题。

在每个动态网站上都有新闻文章和其他类型的用户生成的功能,我们称之为盒装内容。如果您浏览该页面,您可以看到在页面底部显示了指定数量的文章,并且有页码箭头可用于显示较旧的帖子

我会对在 php.ini 中制作类似的东西的过程感兴趣。我不是在寻找现成的代码,因为我知道每个站点都是独一无二的,但我想学习算法。我正在寻找解决这个问题的逻辑结构。

我的意思是,例如,我想设置页面上显示的新闻文章(盒装内容)的最大数量。我想我可以用循环来做到这一点。对于单个页面来说这并不难,但是如果有大约 300 篇文章并且我想在第一页上显示 10 篇最新的文章,那么如果用户点击第二页/下一个箭头,我该如何解决它会加载其他 10篇较旧的文章等等

我的理论是,如果我点击第 2 个页面链接,它会发布一个 php 代码,该代码会更改我们在文章加载表单中使用的 mysql 查询中使用的变量,因此它会从不同的起始 id 加载文章/盒装内容(即如果我们点击 2. page 链接,则不是 0 而是 10;如果我们点击 3. page 链接,则为 20)。循环开始并加载以下(以前的)10 篇文章。

我知道在数据库中获取文章 id 时我应该向后计算,因为最新的文章总是具有最高的 id,但为了解释,我认为上面的例子更容易理解,我可以向你展示我想做的事情。

我的理论很有可能是完全错误的,但到目前为止我想分享我的想法。

抱歉,如果这是一个不称职的问题,我将不胜感激有关此问题的任何信息。

4

2 回答 2

2

这样做的方法是利用 MySQL限制子句和 2 个参数,即要检索的开始行数和最大行数。在您的示例中,它将是limit *page_number* * 10, 10. 或者,您可以在PHP中实现相同的目标,但我建议保留 SQL 中操作数据的繁重工作。

于 2013-02-03T01:01:15.900 回答
0

mysql_query("SELECT * FROM myAritcleTableName ORDER BY primaryKeyTableName DESC"); // php代码

于 2013-02-03T00:58:54.613 回答