php - 注册表单无法将数据写入数据库

标签 php mysql

我看了一个关于如何用 PHP 和 MySQL 制作注册表单的教程,每次我尝试错误消息时都显示“”用户无法添加到数据库中。这是我的代码:

   <?php
    session_start();

    $username = "";
    $email    = "";
    $password = "";

    $_SESSION['message']='';



    $db = mysqli_connect('localhost', 'root', '', 'registration');



    if($_SERVER['REQUEST_METHOD'] == 'POST'){
      if($_POST['password'] == $_POST['confirm-password']){
        $username = mysqli_real_escape_string($db, $_POST['username']);
        $email = mysqli_real_escape_string($db, $_POST['email']);
        $password = mysqli_real_escape_string($db, $_POST['password']);

        $query = "INSERT INTO users (username, email, password)
              VALUES('$username', '$email', '$password')";
           mysqli_query($db, $query);

        if($db->query($query) === true){
          $_SESSION['message']="Registration succesful! Added $username to the datebase!";
          header("location: welcome.php");
        }
        else {
          $_SESSION['message'] = "User could not be added to the database!";
        }
      }
      else {
        $_SESSION['message'] = "Password did not match!";
      }
    }
  ?>

最佳答案

试着把 $db->e​​rror 放在你的 else 语句中,看看它说了什么.. 如果有错误或异常

 if($db->query($query) === true){
          $_SESSION['message']="Registration succesful! Added $username to the datebase!";
          header("location: welcome.php");
        }
        else {
            echo $db->error; 
            die();

          $_SESSION['message'] = "User could not be added to the database!";
        }

关于php - 注册表单无法将数据写入数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50949857/

相关文章:

javascript - 我们如何通过使用来自另一个 div 的链接使 DIV 可点击

php - 遍历查询构建器实例,删除一些项目然后返回修改后的实例

mysql - 根据第二个表的另一个值在第一个表中选择一个值(sql)

Mysql多表创建

php - 按过去 24 小时的时间戳筛选结果

php - 如何使用php创建通知列表

php - 为什么这个 Javascript 在与 php 混合时不起作用?

java - 如何使用mysql从表中读取以逗号分隔的字符串

php - 如何从 SVG 制作透明的下拉按钮?

javascript - 如何在 PHP 中检测数据库事件时创建 Web 通知