致命错误:在布尔值上调用成员函数 execute()

0 php

致命错误:调用成员函数 execute() on boolean in ---- 第 18 行

我不断收到此错误。我想要发生的是当您单击帖子上的删除按钮时,它将删除它。这是第 18 行

$result->execute(array(':id' => $_GET['delpost']));
Run Code Online (Sandbox Code Playgroud)

PHP

if (isset($_GET['delpost'])) { 

    $result = mysqli_query( $connection,'DELETE FROM blog WHERE id = :id') ;
    $result->execute(array(':id' => $_GET['delpost']));

    header('Location: blog.php?action=deleted');
    exit;
}
Run Code Online (Sandbox Code Playgroud)

Bar*_*mar 8

您需要使用prepare()来创建准备好的语句,而不是query. 您还混合了 PDO 和 mysqli,这是行不通的。

如果您使用的是 PDO,它应该是:

$result = $connection->prepare('DELETE FROM blog WHERE id = :id');
$result->execute(array(':id' => $_GET['delpost']));
Run Code Online (Sandbox Code Playgroud)

如果您使用的是 mysqli,它应该是:

$result = $connection->prepare('DELETE FROM blog WHERE id = ?');
$result->bind_param('i', $_GET['delpost']);
$result->execute();
Run Code Online (Sandbox Code Playgroud)