繁体   English   中英

Mysql PHP查询运行完美,但返回false

[英]Mysql PHP Query Runs Perfectly, But returns as false

我有一些可以正常工作的mysql_query(),但是如果我将它们放在if else语句中,它们将返回false。 任何想法?

        public function delete_post() {

        $id = $_GET['post_id'];

        mysql_query("DELETE FROM posts WHERE post_id='$id' LIMIT 1");

        if ( !mysql_query() ) {
            echo ('Could not be Deleted');
        } else { 
            echo 'Deleted Successfully'; 
        }
    }

当我运行它时,它将删除该帖子,但返回“无法删除”

您正在使用空SQL语句(不是正确的SQL)运行查询。 尝试这个。

$result = mysql_query("DELETE ...");
if (!$result) {
    echo ('Could not be Deleted');
} else {
    echo 'Deleted Successfully';
}

区别在于(我的代码)的第2行。

注意:不建议使用mysql_query() 您确实应该使用PDO :: query代替。

如果您仍然希望使用它,请执行以下操作:

$result = mysql_query("DELETE FROM posts WHERE post_id='$id' LIMIT 1");
if (!$result) 
{
    echo ('Could not be Deleted');
}

说明:

在原始代码中,您两次调用mysql_query() 第二次,没有参数,所以它不起作用,这就是您的代码报告的内容。

我认为这是一个非常相似的问题/答案: 成功的MySQL DELETE返回什么? 如何检查DELETE是否成功?

您能尝试一下它的建议,看看是否对您有用?

您可以尝试:

public function delete_post() {

        $id = $_GET['post_id'];

        $query = mysql_query("DELETE FROM posts WHERE post_id='$id' LIMIT 1");

        if ( !$query ) {
            echo ('Could not be Deleted');
        } else { 
            echo 'Deleted Successfully'; 
        }
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM