如果用户是第一次登录,如何将用户重定向到不同的页面



如果用户是注册后第一次登录,我会尝试将用户重定向到其他页面。

例如:如果用户是第一次登录,那么用户需要重定向到xyz.php页面,如果不是,那么用户应该登录到index.php页面。从来没有做过这样的事,所以我对此一无所知。

我知道我的代码容易受到SQL注入的攻击。你不需要指出这一点。这只是为了测试

<?php 
session_start();
include 'db-connection.php';
$user_email = mysqli_real_escape_string($connection, $_POST['user_email']);
$user_pass = mysqli_real_escape_string($connection, $_POST['user_pass']);

$select_user = "select * from users where user_email='$user_email'";
$select_user_query = mysqli_query($connection, $select_user);
$user_email_count = mysqli_num_rows($select_user_query);
if($user_email_count) {
$user_result_array = mysqli_fetch_array($select_user_query);
$user_db_pass = $user_result_array['user_pass'];
$user_id = $user_result_array['user_id'];
$user_name = $user_result_array['user_name'];

if($user_pass === $user_db_pass ) {
$_SESSION['user_id'] = $user_id;
$_SESSION['user_name'] = $user_name;
echo "<span class='alert alert-success'>Login Successful</span>";
header("location: index.php");
}

} else {
echo "<span class='alert alert-danger'>You have entered wrong password</span>";
}

} else {
echo "<span class='alert alert-danger'>No Record Found</span>";
}
?>

谢谢

通常,您需要在users表中为last_login_datenumber_of_loginshas_logged_in设置一列,然后在他们登录时与之进行比较。

因此,在users表中,要么将has_logged_in默认为0(零(,要么在插入新记录时确保将值设置为0

登录时,您将添加一个额外的if语句来检查此值并更新has_logged_in字段:

if ($user_result_array['has_logged_in'] == 0) { 
mysqli_query('UPDATE users SET has_logged_in = 1 WHERE user_id = '.$user_id);
header("location: xyz.php"); 
die();
}

我想你明白要点了。

相关内容

最新更新