参数化SQL:插入不起作用


Parameterized SQL : Insert not working

我正在尝试使用参数化SQL执行INSERT。我是参数化SQL的新手。我的表名是archpedia.full_developers (db.table)

我的连接也很好。我在数据库archpedia上创建了只有SELECT, INSERT, UPDATE权限的自定义用户。我甚至用root检查了SQL,只是为了确认用户权限是否有错误,但即使是root似乎也不起作用。

这是我的php:

$query = "INSERT INTO full_developers (fullname, username, email, password, project, phone, token, salt) VALUES (?, ?, ?, ?, ?, ?, ?)";
    $insert_stmt = $mysqli->prepare($query);
    echo "ok?";
    if ($insert_stmt) {
        $insert_stmt->bind_param('sssssiss', $fullname, $username, $email, $password, $project, $phone, $uniqueToken, $random_salt);
        //$insert_stmt->execute();
        // Execute the prepared query.
        echo "check";
        if (! $insert_stmt->execute()) {
            header('Location: ../error.php?err=Registration failure: INSERT');
        }
    }
    //header('Location: ./register_success.php');

我的错误是$insert_stmt->prepape($query);不起作用。我没有任何错误。当我输入语句echo"check"查看$insert_stmt是否工作时,它永远不会显示。我不知道我到底在哪里做错了,所以任何帮助都将不胜感激。

如果您有8个值(多缺少一个)

 VALUES (?, ?, ?, ?, ?, ?, ?)

为8个值添加8个占位符

 VALUES (?, ?, ?, ?, ?, ?, ?, ?)

错误报告以检查进一步的错误

$query="INSERT INTO full_developers(全名、用户名、电子邮件、密码、项目、电话、令牌、盐)VALUES(?,?,??,?、?、?,?)";

/将您的查询替换为this/