【问题标题】:Fatal error: Uncaught mysqli_sql_exception error [closed]致命错误:未捕获的 mysqli_sql_exception 错误 [关闭]
【发布时间】:2023-01-06 22:50:24
【问题描述】:

致命错误:xampp 中未捕获 mysqli_sql_exception

我的表单与数据库的连接error

$username = $_POST['username'];
$gender = $_POST['gender'];
$email = $_POST['email'];
$password = $_POST['password'];
$number = $_POST['number'];

// Database connection
$conn = new mysqli('localhost','root','','chuchutvlogin');
if($conn->connect_error){
    echo "$conn->connect_error";
    die("Connection Failed : ". $conn->connect_error);
} else {
    

    $stmt = $conn->prepare("insert into chuchutvlogin(username, gender, email, password, number) values( ?, ?, ?, ?)");
    $stmt->bind_param("ssssi", $username, $gender, $email, $password, $number);
    $execval = $stmt->execute();
    echo $execval;
    echo "Registration successfully...";
    $stmt->close();
    $conn->close();

【问题讨论】:

  • 您是否尝试阅读错误消息?您正在尝试将 4 个值写入 5 列。这只不过是一个错字。
  • 列数(列数)username, gender, email, password, number 与您计划写入的值数(值数)?, ?, ?, ? 不匹配。
  • 还要散列您的用户密码,不要将 root 用于 Web 应用程序。创建具有适当权限的 SQL 用户。

标签: php mysql


【解决方案1】:

粗略地看一下,您在列列表中指定了 5 列,但在值列表中只指定了 4 个问号。

您需要做的就是添加一个额外的问号:

insert into chuchutvlogin(username, gender, email, password, number) values (?, ?, ?, ?, ?)

【讨论】:

  • 拼写错误应作为拼写错误关闭。
猜你喜欢
  • 2022-12-21
  • 2021-06-02
  • 2016-10-28
  • 2022-11-04
  • 1970-01-01
  • 2022-01-25
  • 2020-07-28
  • 1970-01-01
  • 2019-01-11
相关资源
最近更新 更多