Php 数据库是空的

Php 数据库是空的,php,database,Php,Database,我的数据库是空的。我不知道怎么回事了。这是语法错误吗?我已经尝试查找语法错误,但找不到。有谁能帮我或告诉我有什么问题吗 <?php if (isset($_POST['signup-submit'])) { require 'dbh.inc.php'; $username = $_POST['uid']; $email = $_POST['mail']; $password = $_POST['pwd']; $pass

我的数据库是空的。我不知道怎么回事了。这是语法错误吗?我已经尝试查找语法错误,但找不到。有谁能帮我或告诉我有什么问题吗

<?php
    if (isset($_POST['signup-submit'])) {

      require 'dbh.inc.php';

      $username = $_POST['uid'];
      $email = $_POST['mail'];
      $password = $_POST['pwd'];
      $passwordRepeat = $_POST['pwd-repeat'];

      if (empty($username) || empty($email) || empty($password) || 
        empty($passwordRepeat)) {
        header("Location: ../signup.php? 
        error=emptyfields&uid=".$username."&mail=".$email);
          exit();
      }
        elseif (!filter_var($email, FILTER_VALIDATE_EMAIL) && 
        !preg_match("/^[a-zA-Z0-9]*%/", $username)) {
          header("Location: ../signup.php?error=invalidmail&uid=");
          exit();
      }
      elseif (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
        header("Location: ../signup.php? 
        error=invalidmail&uid=".$username);
        exit();
      }
      elseif (!preg_match("/^[a-zA-Z0-9]*$/", $username)) {
        header("Location: ../signup.php?error=invalidmail&uid=".$email);
        exit();
      }
      elseif ($password !== $passwordRepeat) {
        header("Location: ../signup.php? 
        error=passworcheck&uid=".$username."&mail=".$email);
      }
      else {

       $sql = "SELECT uidUsers FROM users WHERE uidUsers=?";
       $stmt = mysqli_stmt_init($conn);
       if (!mysqli_stmt_prepare($stmt, $sql)) {
        header("Location: ../signup.php?error=sqlerror");
         exit();
       }
       else {
         mysqli_stmt_bind_param($stmt, "s", $username);
         mysqli_stmt_execute($stmt);
         mysqli_stmt_store_result($stmt);
         $resultCheck = mysqli_stmt_num_rows($stmt);
         if ($resultCheck > 0) {
             header("Location: ../signup.php? 
             error=usertaken&mail=".$email);
             exit();
        }
        else {
          $sql = "INSERT INTO users (uidUsers, emailUsers, pwdUsers) 
           VALUES (?, ?, ?)";
          $stmt = mysqli_stmt_init($conn);
          if (!mysqli_stmt_prepare($stmt, $sql)) {
           header("Location: ../signup.php?error=sqlerror");
            exit();
        }
        else {
          $hashedPwd = password_hash($password, PASSWORD_DEFAULT);

          mysqli_stmt_bind_param($stmt, "ssss", $username, $email, 
          $password);
          mysqli_stmt_execute($stmt);
          header("Location: ../signup.php?signup=succes");
           exit();
        }
        }
       }

      }
      mysqli_stmt_close($stmt);
      mysqli_close($conn);

    }
    else {
      header("Location: ../signup.php");
       exit();
    }

我猜这行是错的:

$sql = "SELECT uidUsers FROM users WHERE uidUsers=?";
                                         ^^^^^^^^^
....
mysqli_stmt_bind_param($stmt, "s", $username);
我想,您需要请求一个用户名来获取用户id


可能还有更多的错误。

问题在于您的“m”键被卡住,您的问题中没有包含任何错误消息,您的问题不清楚(空数据库是什么意思--没有表?表中没有数据?您如何使用什么输入运行代码?您希望发生什么,以及会发生什么?),并且您的代码不是,所以人们可以试着复制它。