查询sql数据库以回显最高自动递增数

时间:2012-12-06 11:41:43

标签: php mysql max

我试图创建一个显示最高值的sql函数,但是我使用的MAX函数的所有变体仍然会出现一个空图像。这里发生了什么?我该如何解决?

//不显示图像,也不会出现任何错误

$result = mysql_query("SELECT MAX(id) AS id FROM people") or die (mysql_error());

//显示图像87

$result = mysql_query("SELECT  * FROM people WHERE id = 87") or die (mysql_error());

enter image description here

1 个答案:

答案 0 :(得分:8)

它不应该显示图像,它应该给出87的结果。

请参阅MAX

你可以这样做:

select * from people order by id desc limit 0, 1 

应该通过ID为您提供最新的图像。

要使此动态并允许下一个按钮,您需要存储正在查看的图像的值。单击下一个按钮后,您可以执行

select * from people order by id desc limit 1, 1 //Start at row 1, bring back 1.

请参阅MySQL Limit

您需要使用PHP来分配限制值和下一个链接。要做到这一点,你需要有这样的链接:

<a href="www.mysite.com/page?imagecount=1">Next</a>

然后使用PHP,你可以:

<?php
    if (isset($_GET["imagecount"]))
        $next = (int)$_GET["imagecount"]; //Don't forget the (int) cast to avoid SQL injection!!!
    else
        $next = 0;

   $result = mysql_query("select * from people order by id desc limit $next, 1") or die(mysql_error());
?>

要扩展链接,您可以使链接动态化:

<a href="www.mysite.com/page?imagecount=<?php echo $next+1; ?>">Next</a>