我需要帮助来修复我的数据库。我不明白为什么它不会返回任何东西。将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>
答案 0 :(得分:0)
如果上面的代码示例已完成,那么您将缺少右括号。
if(isset($_POST['login'])) {
未关闭。
此外,您在开始会话之前将内容输出到客户端。在为输出编写任何内容之前必须调用session_start
。将开头<?php
标记之前的所有内容移动到调用session_start();
的点之后。
正如其他人所提到的,停止使用mysql_ *函数。看看mysqli或pdo。