gpt4 book ai didi

php - 访问 MySQL 数据库中的下一条和上一条记录

转载 作者:行者123 更新时间:2023-11-29 13:28:31 25 4
gpt4 key购买 nike

假设我有 3 个相同用户的记录,ID 分别为 2、4、7、9,并且我希望能够通过下一个/上一个链接导航从一个记录转到另一个记录。问题是,我不知道如何通过链接重定向到同一页面来获取每页 1 条记录。

因此,当我有 ID 为 4 的记录时,如果我单击上一个,它必须将我重定向到 ID 为 2 的记录的同一页面,如果我单击下一个,它应该将我带到 7。请帮助重定向并每个显示一条记录页。

到目前为止我已经做了:

<?php 
$query1 = "SELECT * FROM table2 WHERE id='{$user}' order by srno desc " ;
$result1=mysql_query($query1,$con);
if (!($result1) )
{
die('Error: ' . mysql_error($con));
}
else
{
$values1= mysql_fetch_array($result1);
}
mysql_close($con);
?>

我需要将查询更改为:

$query1 = "SELECT * FROM table2 WHERE id='{$user}' order by srno desc LIMIT 1 OFFSET 1" ;

最佳答案

我会在上一个/下一个链接中使用类似的东西...

html

<a href="?action=prev&id=<?php echo $values['id'] ?>">prev</a>
<a href="?action=next&id=<?php echo $values['id'] ?>">next</a>

php

<?php
if(!is_numeric($_GET['id'] || $_GET['id'] < 1)
throw new \Exception('Illegal id value');
if(!isset($_GET['action']))
$_GET['action'] = 'view';
switch($_GET['action']){

case 'prev':
$q = "SELECT * FROM table2 WHERE id<'{$_GET['id']}' ORDER BY id DESC LIMIT 1" ;
break;

case 'next':
$q = "SELECT * FROM table2 WHERE id>'{$_GET['id']}' ORDER BY id ASC LIMIT 1" ;
break;

case 'view':
$q = "SELECT * FROM table2 WHERE id='{$_GET['id']}'";
break;

default:
throw new \Exception('Illegal action value');

}



$result1=mysql_query($query1,$con);
if (!($result1) )
{
die('Error: ' . mysql_error($con));
}
else
{
$values1= mysql_fetch_array($result1);
}
mysql_close($con);

我不明白 srno 是什么,也不明白你是如何在 $user var 中获取你的 user id 的,所以我留下了它们出去。尽管如此,代码应该是实用的,一旦你理解了它,你就可以用它来重写你自己的代码。

关于php - 访问 MySQL 数据库中的下一条和上一条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19804186/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com