Mysqli - 准备失败,原因不明

Mysqli - prepare fails for no apparent reason

这是我的代码:

$mysqli = mysqli_connect('localhost',DB_USER,DB_PASSWORD,DB_NAME);
$mysqli->set_charset("utf8");

$STH = $mysqli->prepare("INSERT INTO wp_kfar_categories_matching (inMate, outMate, categoryId, agesId) VALUES (?, ?, ?, ?)");

    echo $mysqli->error;

    $STH->bindParam("iiii", $in, $out, $categoryId, $agesId);
    echo $mysqli->error;
    $i = 0;
    $length = count($inserts);
    while($i < $length) {
        $in = $inserts[$i]->in;
        $out = $inserts[$i]->out;
        $categoryId = $inserts[$i]->categoryId;
        $agesId = $inserts[$i]->agesId;

            $STH->execute();
            $i++;
    }

输出为: 致命错误:在第 252 行

的 .../data.php 中调用未定义的方法 mysqli_stmt::bindParam()

我仔细检查了到目前为止我读过的所有内容 - 参数的数量是 4,字段的名称是正确的 - 但无论如何,它不起作用。

知道为什么会这样吗?

方法是bind_param,所以你会这样做:

$STH->bind_param("iiii", $in, $out, $categoryId, $agesId);

您正在考虑 PDO's bindParam