我正在构建一个有成员和用户的登录系统。我有一个表,其中包含名称,用户名,密码,电子邮件和类型的列。类型指定用户的类型。我已经创建了一个工作登录表单。我的问题是每次我尝试登录时都不会重定向到指定的页面。它保留在同一页面上但给我一个空白页面。我一直在弄清楚代码有什么问题。有人能帮我吗 ? 谢谢。
PHP登录代码:
<?php
include 'try_connect.php';
if (isset($_POST['login'])) {
$user = $_POST['username'];
$pass = $_POST['password'];
$hsl = mysql_query("SELECT name, username, password, type FROM users WHERE username='$user' and password='$pass'");
$data = mysql_fetch_array($hsl);
$username = $data['username'];
$password = $data['password'];
$type = $data['type'];
$name = $data['name'];
if ($user==$username && $pass==$password) {
session_start();
$_SESSION['name']=$name;
if ($type =='admin') {
header('Location: try_admin.php');
}
elseif ($type =='user') {
header('Location:try_user.php');
}
}
}
?>
登录表格
<form action="try_login.php" method="POST">
<table style="margin-left: 30%; margin-bottom: 1%;">
<tr>
<th style="font-family: Arial; line-height: 5px;">Username:</th>
<td><input type="text" name="username" style="margin-left: 10%; width: 120%; margin-bottom: 5%;"></td>
</tr>
<tr>
<th style="font-family: Arial;">Password:</th>
<td><input type="password" name="password" style="margin-left: 10%; width: 120%; margin-bottom: 0%; margin-top: 10%;"></td>
</tr>
</table>
<input type="submit" value="login" name="login" style="background-color: black; color: white; margin-bottom: 5%; margin-top: 0%; margin-left: 59%; border-color: #89cff0; border-style: double solid;">
答案 0 :(得分:0)
试试这个:
<?php
include 'try_connect.php';
if (isset($_POST['login'])) {
$user = $_POST['username'];
$pass = $_POST['password'];
$hsl = mysql_query("SELECT name, username, password, type FROM users WHERE username='$user' and password='$pass'");
$data = mysql_fetch_array($hsl);
$username = $data['username'];
$password = $data['password'];
$type = $data['type'];
$name = $data['name'];
if ($user==$username && $pass==$password) {
session_start();
$_SESSION['name']=$name;
if ($type =='admin') {
header("Location: try_admin.php");
}
elseif ($type =='user') {
header("Location:try_user.php");
}
}
}
?>
答案 1 :(得分:0)
在exit()
之后使用header()
。 exit()
会立即终止您的脚本。
if ($type =='admin') {
header('Location: try_admin.php');
exit();
}
elseif ($type =='user') {
header('Location:try_user.php');
exit();
}
还要确保在header()
标记之前html
输出之前调用<html>
函数