私は PHP の学習者ですが、PHP セッションでいくつかの問題があります。
簡単なログイン テストを実行しようとしていますが、別のページに移動するとセッション変数が追従しないようです。2 つの重要なファイル:
ログインの確認:
<html>
<head>
<title>
<?php
session_start();
?>
</title>
</head>
<body>
<?php
$connection = mysql_connect("localhost", "root", "root");
if(!connection)
{
die("could not connect to the database");
}
mysql_selectdb("phplogin", $connection) or die ("MySQL error i valg af database: " .mysql_error());
$query = "Select * from users where username='".$_POST['username']."' AND password = '".$_POST['userpass']."'";
$result = mysql_query($query);
$count = mysql_num_rows($result);
if($count==1){
$_SESSION['loggedIn'] = "true";
echo "The variable: ".$_SESSION['loggedIn'];
header("Location: loggedinPage.php");
exit;
}
if(!$count == 1){
header("Location:Login.php");
exit;
}
?>
</body>
そしてアクセスページ:
<html>
<head>
<title>
<?php
session_start();
?>
</title>
</head>
<body>
<?php
if($_SESSION['loggedIn'] != "true"){
echo "You are NOT logged in";
echo $_SESSION['loggedIn'];
exit;
}
echo $_SESSION['loggedIn'];
echo "You are logged in";
?>
</body>
正しいユーザーとパスワードを入力しても、新しいページに移動するとログインしていないと表示されます。もう1つは「ヘッダー(場所:など)」です。これは機能しません。手動でリダイレクトする必要があります。
どんな助け:)? - デビッド
ありがとう、ログインできるようになりましたが、リダイレクトはまだ機能しませんか? 私のファイルは次のようになります。
<?php
session_start();
?>
<?php
$connection = mysql_connect("localhost", "root", "root");
if(!connection)
{
die();
}
mysql_selectdb("phplogin", $connection) or die ("MySQL error i valg af database: " .mysql_error());
$query = "Select * from users where username='".$_POST['username']."' AND password = '".$_POST['userpass']."'";
$result = mysql_query($query);
$count = mysql_num_rows($result);
if($count==1){
$_SESSION['loggedIn'] = "true";
header("Location: loggedinPage.php");
}
if(!$count == 1){
header("Location:Login.php");
}
?>
<head>
<title>
</title>
</head>
<body>
</body>