0

我编写了一个脚本来在我的网站上显示我的新闻帖子,并使用该$_GET函数进行扩展,以便在该页面上显示按其 ID 列出的某个帖子,然后使用 else 函数列出页面上的所有帖子(如果该函数)不使用。

我的问题是,当我查看我想要的例如 ID '9' 的帖子时,它会显示,但是如果我转到一个不存在的帖子,例如 '3958389583',那么它只会显示我的样式框,用于显示新闻数据的位置应该打印,而不是我用 if 语句回显的错误消息。

这是代码的这一部分:

if(isset($_GET['postid'])) {
    $id = mysql_real_escape_string(stripslashes($_GET['postid']));
    $result = @mysql_query("SELECT * FROM news WHERE id = '".$id."'");
    if (!$id) {
    echo("Error! The post you are trying to view does not exist or has been removed.");
    } else {

在 else 语句继续打印我的新闻信息的其余代码之后。有人请帮忙,我只需要显示错误消息。谢谢,如果您出于任何原因需要其余代码,请告诉我:)

4

2 回答 2

2

我想你想要做的是:

if(isset($_GET['postid'])) {
    $id = mysql_real_escape_string(stripslashes($_GET['postid']));
    $result = @mysql_query("SELECT * FROM news WHERE id = '".$id."'");
    if (mysql_num_rows($result) == 0) {
    echo("Error! The post you are trying to view does not exist or has been removed.");
    } else {

但是,您应该停止使用mysql_函数

于 2012-08-30T22:43:28.843 回答
0

只是一个想法。id它的名字似乎是一个数字,你使用id = 'id' 因为你抑制错误查询 -@mysql_query你没有看到任何错误。以防万一 - 删除抑制。它可能会给你答案。

于 2012-08-30T22:50:09.703 回答