ログインスクリプトを作成中です。ログインして正しいページに移動するのに問題があります。現在、ユーザーはログインフォームを送信します。ログインフォームは、セキュリティで保護されたページに送信されます。このページでは、以下のようにセッションの一致をチェックしますが、あなたはそれがユーザーであるとし、「安全な」のページに誘導するかどうかを確認、検証した後に見ることができるようにセッションが作成されず、ログインが発生しません。
Login.php
session_start();
include("clientarea/inc/config.php"); //Establishing connection with our database
$error = ""; //Variable for storing our errors.
if(isset($_POST["login"])){
if(empty($_POST["email"]) || empty($_POST["password"])){
$error = "Both fields are required";
} else {
// Define $email and $password
$email = $_POST['email'];
$password = $_POST['password'];
// To protect from MySQL injection
$email = mysqli_real_escape_string($connection, $email);
$password = mysqli_real_escape_string($connection, $password);
//$password = md5($password);
//Check username and password from database
$stmt = "SELECT * FROM users WHERE email='$email' and password='$password'";
$result = mysqli_query($connection, $stmt);
$row = mysqli_fetch_array($result,MYSQLI_ASSOC);
//If username and password exist in our database then create a session.
if(mysqli_num_rows($result) == 1){
$_SESSION['email'] = $login_user; // Initializing Session
header("location: clientarea/index.php"); // Redirecting To Other Page
} else {
$error = "Incorrect username or password.";
}
}
}
-
は、ここに私のコードです。ここで
は今、確かユーザーがそれ以外の場合は、ホームページにリダイレクトするにはログインされていることを確認するために「安全な」のページの上部にauth.php実行されauth.php
include('inc/config.php');
session_start();
$user_check = $_SESSION['email'];
$sql = mysqli_query($connection, "SELECT email FROM users WHERE email='$user_check' ");
$row = mysqli_fetch_array($sql,MYSQLI_ASSOC);
$login_user = $row['email'];
if(!isset($user_check))
{
header("Location: http://localhost/findpt/index.php");
}
です。今私はauth.phpファイルを削除した場合、私はまっすぐに '安全な'ページに行くが、その場所でそれはホームページに私を起動します。
私は$ _SESSION ['email']をエコーすると何も受け取りません。