Php mySQL上一次/下一次查询

Php mySQL上一次/下一次查询,php,mysql,Php,Mysql,我正在试图找到一种方法,使用上一个和下一个按钮来显示给定查询排序的更多数据,就像分页一样 问题是: $query = "SELECT * FROM wp_posts p LEFT OUTER JOIN wp_term_relationships r ON r.object_id = p.ID LEFT OUTER JOIN wp_term_taxonomy x ON x.term_taxonomy_id = r.term_taxo

我正在试图找到一种方法,使用上一个下一个按钮来显示给定查询排序的更多数据,就像分页一样

问题是:

$query = "SELECT * 
        FROM wp_posts p
            LEFT OUTER JOIN wp_term_relationships r ON r.object_id = p.ID
            LEFT OUTER JOIN wp_term_taxonomy x ON x.term_taxonomy_id = r.term_taxonomy_id
            LEFT OUTER JOIN wp_terms t ON t.term_id = x.term_id
            LEFT JOIN wp_postmeta pm ON p.id = pm.post_id
        WHERE p.post_status = 'publish'
        AND pm.meta_key = 'xTraData'
        AND p.post_type = 'post'
        AND t.slug = 'press-coverage'
        ORDER BY p.post_date DESC LIMIT 0,6;";

如何获取用于刷新查询字符串的下一个/上一个按钮的上一个id下一个id。在本例中,上一个id将是
null
下一个id可能是7。如果您总是希望一次记录X,您可以
限制$next\u ID,($next\u ID+$X)
,并相应地修改上一个和下一个变量。

您可以使用$\u get变量获取它们,该变量可以从URL发送。处理它们以提高您的限制

mysql限制定义要获取多少行以及从何处获取

因此,
0,6
在查询中说从
0
(首先)开始,然后选择
6

$p_num = isset($_GET['pagenumber']) && (int)$_GET['pagenumber'] > 0 ? $_GET['pagenumber'] : 0;
$p_size = 6;

$query = "SELECT * 
        FROM wp_posts p
            LEFT OUTER JOIN wp_term_relationships r ON r.object_id = p.ID
            LEFT OUTER JOIN wp_term_taxonomy x ON x.term_taxonomy_id = r.term_taxonomy_id
            LEFT OUTER JOIN wp_terms t ON t.term_id = x.term_id
            LEFT JOIN wp_postmeta pm ON p.id = pm.post_id
        WHERE p.post_status = 'publish'
        AND pm.meta_key = 'xTraData'
        AND p.post_type = 'post'
        AND t.slug = 'press-coverage'
        ORDER BY p.post_date DESC LIMIT ".(($p_num-1) * $p_size).",".$p_size.";";

现在,发送一个请求,比如:
yourpage.php?pagenumber=2
,它将查询第二个页面,其中一个页面将包含大约6个项目。

因此pagenumber=0将生成0,6,而pagenumber=1将生成10,6。。那不应该是5,6吗?如果p_num是0,那么它的-6(0-1*6)?@StealthRT,这是基本的算术。这不是一个为我编写代码的社区。无论如何,检查一下更新。我是说$p_num-1需要是$p_num,不带-1。@实际上,当你查询第二页(2)时,限制应该从5开始,而不是11,所以
-1
是必要的。试试我的代码。