如何修复 mysqli_error() 正好需要 1 个参数

How to fix mysqli_error() expects exactly 1 parameter

当我 运行 这段代码时,我给出了这个错误:

mysqli_error() expects exactly 1 parameter, 0 given

它的 $insert_stmt->execute() 我不知道为什么我有这个错误,因为数据库和 table 是真的,所有 4 个值都有刺痛

if ($insert_stmt = $mysqli->prepare("INSERT INTO members (username, email, password,salt) VALUES (?, ?, ?, ?)")) {

    $insert_stmt->bind_param('ssss', $username, $email, $password, $random_salt);

    // Execute the prepared query.
    if (! $insert_stmt->execute()) {
        echo mysqli_stmt_error();
    }

函数也需要语句。

mysqli_stmt_error($yourstatement). 

在这里检查 - mysqli_stmt_error

您在代码中混淆了 MySQLi 的面向对象和过程式风格用法。

面向对象的风格:

echo $insert_stmt->error;

程序风格:

echo mysqli_stmt_error($insert_stmt);

您正在使用后者,但没有给出参数。我建议您像在代码的其他部分中那样使用面向对象的方式。