5

我试图制作一个显示最高值的 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());

在此处输入图像描述

4

1 回答 1

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 限制

不过,您需要使用 PHP 来分配 limit 和下一个链接中的值。为此,您需要有这样的链接:

<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>
于 2012-12-06T11:43:29.887 回答