php - 参数化 SQL : Insert not working

标签 php mysql

我正在尝试使用参数化 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 (?, ?, ?, ?, ?, ?, ?, ?)

报错进一步检查错误

关于php - 参数化 SQL : Insert not working,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26458620/

相关文章:

php - Laravel 中有没有办法通过单个查询添加/删除多个索引?

mysql - 如何将表名连接到mysql中的列

mysqldump 因 "Skipping dump data for table ' 表 1', it has no fields"而失败

asp.net - 在本地IIS上发布asp网站

php - 跟踪多个月的播放次数

php - 安装 Herd 并返回 Valet 后为 502

php - 使用返回 0 的查询行比较 mysql 密码哈希(不工作)

php - 使用数组构建 CSV

c# - 将 Dapper.net 与 MySql 和 Oracle 结合使用

php - Laravel Collection 仅返回 11 个值