我最近开始处理表单验证和登录/注册。但是,我遇到了一个问题,当我单击具有现有用户名和密码的登录按钮时,我想要转到同一页面(登录页面)或起始页面,并显示消息:“您已成功登录”。我不知道该怎么做。我有除其他外,两个PHP文件,的login.php:登录表单和注册PHP
if (loggedin()) {
$firstname = getuserfield('firstname');
$surname = getuserfield('surname');
echo 'You\'re logged in, '.$firstname.' '.$surname.'. <a href="logout.php">Log out </a><br>';
} else {
include 'loginform.inc.php';
}
和loginform.inc.php
if (isset($_POST['username'])&&isset($_POST['password'])) {
$username = $_POST['username'];
$password = $_POST['password'];
$password_hash = md5($password);
if (!empty($username)&&!empty($password)) {
$query = "SELECT `id` FROM `users` WHERE `username`='".mysql_real_escape_string($username)."' AND `password`='".mysql_real_escape_string($password_hash)."'";
if ($query_run = mysql_query($query)) {
$query_num_rows = mysql_num_rows($query_run);
if ($query_num_rows==0) {
?> <div id = "a5"> <?php echo 'No such combination of username and password' ?> </div>; <?php
} else if ($query_num_rows==1){
$user_id = mysql_result($query_run, 0, 'id');
$_SESSION['user_id']=$user_id;
header('Location: login.php');
}
}
} else {
?> <div id="a"> <?php echo 'Please enter username and password!' ?> </div>
为什么在验证用户凭据后,您不重定向到成功页面?并在成功页面上,只需检查会话是否设置! – NoobEditor