如何加载下一个/上一个帖子

时间:2013-08-14 17:01:30

标签: php mysql

我正在创建一个网站,在那里我指的是我在网上发现的所有内容,有一个博客,它指的是几篇文章,但很短,每页一篇。 我正在寻找一个我应该放在div中的函数来获取上一篇或下一篇文章。 我的SQL数组的每一行都有'id''title''content''link''date'信息。 因此,当到达网站时,我们会看到上一篇文章(最高id),我想要一个按钮(我更喜欢可编辑的div作为单选按钮)少id'id'在相应的'title'上设置新的'content''link''date'div<html> <head> <title>Today I</title> </head> <body> <?php //On se connecte au serveur $base = mysql_connect ('dododo.dobido', 'dodobi', 'bibido'); //On sélectionne la db mysql_select_db ('do', $base) ; //On sélectionne tous les éléments de la table ckga_main, on les trie par ordre décroissant et on sélectionne le premier de la liste (donc l'id le plus élevé) $sql = 'SELECT * FROM CKGA_main ORDER BY id DESC LIMIT 1'; $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); //Début de la boucle (TANT qu'il y a des éléments dans ma requête, je sors des $data) while ($data = mysql_fetch_array($req)) { ?> <div id="ajd">Aujourd'hui j'ai</div> <div id="title"><?php echo $data['title']; ?></div> <div id="content"> <?php echo '<a href="'.$data['link'].'">'.$data['content'].'</a>';?> </div> <?php } // Fin de la boucle mysql_close (); ?> </body> </html>

<div id="prev_button">Previous Article</div>

您可以在this page (I'm french)处查看结果。 因此,我们可以设想{{1}}将所有div的内容更改为新的数组行。 我看了这个功能两天...... 我不知道我是否必须做PHP,MySQL,Javascript或jQuery功能...... 而且,我甚至都不知道它的外观。

2 个答案:

答案 0 :(得分:1)

您的解决方案必须使用HTML,PHP和SQL级别,不需要Javascript。

让我们一步一步地学习一个非常基本的解决方案。警告:我有一段时间没有完成PHP而且我没有检查我的代码。解决方案也非常有限,例如我不检查是否存在上一篇或下一篇文章。这只是为了指出你正确的方向。

您希望用户点击某些内容以获取新内容(上一篇文章)。最简单的方法是使用包含URL中必要信息的链接 - 可能是上一篇文章的ID。这可能是什么样的(在你的while循环中):

<a href="http://chezleyoule.com/testbdd/?article=<?php echo ($data['id'] - 1); ?>

article=123 - 部分是GET参数。您的脚本可以检查该参数是否存在 - 如果不存在,只需像现在一样显示最新页面,但如果存在,则使用该参数从数据库中获取文章:

$sql = 'SELECT * FROM CKGA_main where id=' . intval($_GET['article']);

然后执行查询并照常显示文章。

答案 1 :(得分:0)

这种形式的解决方案如何:

//select all of the post ID's and put them in an array

//pick which post you wish to display (the highest ID if $_GET['postid'] is not set)

//create a button to link to 'mypage.php?postid=<previous_post_id>' if there is one

//create a button to link to 'mypage.php?postid=<next_post_id>' if there is one

//get data from table for current page postid (or $_GET['postid'] if it is set) and display

如果使用AJAX,解决方案将非常相似,除非您不链接到不同的页面,而只是根据AJAX返回更新内容和按钮