-1
我一直在嘗試將用戶重定向到他當前的頁面(他在登錄前),但仍然無法正常工作。我嘗試了下面的腳本。而不是將用戶帶到他所在的地方..用戶被帶到主頁。有人能以正確的方式來做到嗎?我如何成功地將用戶重定向到他在他登錄後在哪裏(他當前的頁面)?
<?php
session_start();
if (!isset($_SESSION['cart'])) {
$_SESSION['cart'] = array();
}
if (isset($_SESSION['user_id']) && filter_var($_SESSION['user_id'], FILTER_VALIDATE_INT,array('min_range' => 1))) {
header('Location:accueil.html.php');
}
if (array_key_exists('login', $_POST)) {
$email=$pass="";
$errors = array();
// Check for an email address:
if (filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
$email = trim($_POST['email']);
} else {
$errorEmail ="Entrer un email valide";
}
if (empty($_POST['pass'])) {
$errorPass = "Entrer votre mot de passe";
}
else{
$pass = trim($_POST['pass']);
}
if ($email && $pass) { //All IS GUD
include('includes/connect.inc.php');
try {
$sql = "SELECT user_id FROM registered_user WHERE email = :email AND pass = :pass";
$stmt = $conn->prepare($sql);
$stmt->bindValue(':email', $email);
$stmt->bindValue(':pass', SHA1($pass));
$stmt->execute();
$row = $stmt->fetch(PDO::FETCH_ASSOC);
if ($row) { //email and pwd combination is rigth
$_SESSION['user_id'] = $row['user_id'];
header('Location:'. $_SERVER['HTTP_REFERER']);
exit();
}
else{
$errors[] = "Nom d'utilisateur et/ou mot de passe incorrect(s)";
}
} catch (PDOException $e) {
$systemErr = "Désolé, Erreur de system".$e->getMessage();
}
} else{
$errors[] = "Désolé, votre connexion a échoué";
}
}//END MAIN IF
?>
您需要在之前'頭(調試。 '地點:accueil.html.php');'線和'header('Location:'。$ _SERVER ['HTTP_REFERER']);'line。檢查這兩行是否有正確的調試OR不? –
[PHP:在登錄後將用戶返回到其原始頁面]的可能重複(http://stackoverflow.com/questions/1984573/php-returning-a-user-to-their-original-page-after-login) – laltin