使用绑定参数插入 phpmyadmin

Insert into phpmyadmin with bind param

我想将值插入到我的数据库中。我在免费的网络服务器上有 phpMyAdmin 数据库。这是代码:

$con = mysqli_connect("hostname", "user", "password", "databasename");
    $name = $_POST["name"];
    $username = $_POST["username"];
    $password = $_POST["password"];
    $email = $_POST["email"];
    $phonenumber = $_POST["phonenumber"];

    $statement = mysqli_prepare($con, "INSERT INTO User (name, username, password, email, phonenumber) 
                                        VALUES (?, ?, ?, ?, ?)"); 
    mysqli_stmt_bind_param($statement, "sss", $name, $username, $password, $email, $phonenumber);
    mysqli_stmt_execute($statement);
    mysqli_stmt_close($statement);
    mysqli_close($con);

问题是我如何在 phpMyAdmin 中插入诸如“... VALUES ('Caroline', 'CC'...”之类的值;它起作用了,我可以插入上面的代码如“... VALUES ('?', '?', '?'...”);但它插入?进入每一列。

这是 table 和 Values( '$name', '? ', '?'..):

那么我如何插入带有“ ”的 $name 并绑定参数? 如果我将 bind_param 中的 $name 更改为 '$name',它仍然不起作用。 但是如果我改变 VALUES('$name') 然后它插入正确的值到 table.

如前所述,您的绑定中有 3x s,但有 5x ? 占位符。

您似乎也想直接在 phpmyadmin 中执行此操作;这不是它的工作原理。那些 placeholders/binding 只能通过您的 website/local 机器从网络浏览器获取 executed/populated 并作为 http://localhost|yourhost/file.php

访问

它需要从服务器和安装了 PHP/MySQL 的环境中执行。

此外,确保您完成此操作后您的表单不会失败;未发布的内容。

error reporting 添加到文件顶部,这将有助于查找错误。

<?php 
error_reporting(E_ALL);
ini_set('display_errors', 1);

// rest of your code

旁注:显示错误只应在试运行中进行,绝不能在生产中进行。

您还应该检查查询中的错误,是否存在任何类型的约束或与您的 incoming/existing 数据发生冲突。


密码

我还注意到您可能以明文形式存储密码。不推荐这样做。

使用以下之一:

其他链接: