php / sql需要查询帮助才能获得最后一个标题

时间:2011-09-01 15:54:33

标签: php mysql

我有一个表单,您输入的内容然后显示最后一行的ID和标题,但是当它在那里创建然后它只显示提交时的上一行,  即如果最后一行ID是23,那么当我真正希望它显示第24行时,它会显示第23行,为了解决这个问题,我在下面的查询中添加了+1到id:

即:

$last_id = $lr_result['id'] + 1;

现在这对于id工作正常,但现在我正在尝试获得相同行的标题,但无论我尝试什么,我总是得到最后一个标题(在提交时),  即第23行标题而不是第24行标题(或者在下面的代码片段中没有任何内容)。

// fetch id
$lastrow    = "SELECT * FROM foo ORDER BY id DESC LIMIT 1";
$lr_result  = mysql_fetch_assoc(mysql_query($lastrow));
//fetch id and add 1
$last_id    = $lr_result['id'] + 1;

// fetch title where id = last_id
$lasttitlerow = "SELECT * FROM foo WHERE id='{$last_id}'";
$ltr_result   = mysql_fetch_assoc(mysql_query($lasttitlerow));
$last_title   = $ltr_result['title'];

echo $last_id . $last_title;

一如既往,所有的帮助都会受到赞赏并提前感谢。

1 个答案:

答案 0 :(得分:0)

SELECT * FROM foo WHERE id = (SELECT max(id) FROM foo)

也许?内部查询将返回“23”,而外部查询将获取整个记录。您将无法检索id = 24,因为该记录尚不存在 - 您尚未插入它。