登录系统 PHP 不会返回任何内容


Login system PHP won't return anything

我需要帮助来修复我的数据库。我不明白为什么它不返回任何内容。将 USBWebserver 与 MySql 结合使用。登录文件不会在浏览器中返回任何内容,甚至不会返回错误消息。请帮助我

<!DOCTYPE html>
<?php
mysql_connect('localhost', 'root', 'usbw');
mysql_select_db('login');
if(isset($_POST['login'])) {
  $gebruiker = mysql_real_escape_string($_POST['naam']);
  $wachtwoord = sha1(mysql_real_escape_string($_POST['password']));
  $query = mysql_query("SELECT user_id, username, userlevel
    FROM users
    WHERE username = '$gebruiker'
    AND password = '$wachtwoord' ");
  // aantal rijen uit de database halen
  $result = mysql_num_rows($query);
  // session variabele starten waaraan je data koppelt
  $sess_var = mysql_fetch_assoc($query);
  $userlevel = $sess_var['userlevel'];
  if ($result == 1){
    // sessie starten en variabelen in de sessie opnemen
    session_start();
    $_SESSION['userlevel'] = $userlevel;
    $_SESSION['gebruiker'] = $gebruiker;
    $_SESSION['wachtwoord'] = $wachtwoord;
    // userlevel controleren en vervolgens bezoeker doorsturen
    // naar de juiste pagina's voor zijn/haar rechten
    if($userlevel == 1){
      header('location:index.php');
      exit();
    } elseif($userlevel == 3) {
      header('location:index.php');
      exit();
    } else {
      header('location:index.php');
      exit();
    }
  }
  mysql_error();
?>
<html>
  <head>
    <style type="text/css">
      ul {list-style: none;}
    </style>
  </head>
  <body>
    <form method="post" action="">
    <ul>
      <li>Gebruikersnaam:</li>
      <li><input typ="text" name="naam" /></li>
      <li>Wachtwoord:</li>
      <li><input type="password" name="password" /></li>
      <li><input type="submit" name="login" value="login" /></li>
    </ul>
  </form>
</body>

如果上面的代码示例已完成,则缺少右括号。 if(isset($_POST['login'])) {没有关闭。

此外,在启动会话之前,您将内容输出到客户端。 在为输出编写任何内容之前,必须调用session_start。 将开始<?php标记之前的所有内容移动到调用session_start();的点之后。

正如其他人所提到的,停止使用 mysql_* 函数。看看mysqli或pdo。