我编写了一个脚本,在我的网站上显示我的新闻帖子,并使用$_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语句之后继续打印我的新闻信息的其余代码。有人请帮忙,我只需要显示错误信息。谢谢,如果您出于任何原因需要其余代码,请告诉我们:)
答案 0 :(得分: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 {
但是,您应该stop using mysql_
functions。
答案 1 :(得分:0)
只是一个想法。 id
的名称似乎是一个数字,您使用id = 'id'
进行查询
由于您压制了错误 - @mysql_query
,因此您没有看到任何错误。
以防万一 - 删除抑制。它可能会给你答案。