セッションを作成できません。
私のPHPコードが
<?php
$dbhost = "localhost";
$dbuser = "root";
$dbpassword = "";
$dbname = "dany";
$query = "";
$sqlQuery = "";
$row = "";
$username=false;
if(isset($_POST['n'])){
$username=$_POST['n'];
}
$password= false;
if(isset($_POST['p'])){
$password= $_POST['p'];
}
$conn=mysqli_connect($dbhost,$dbuser,$dbpassword,$dbname);
$sUser=mysqli_real_escape_string($conn,$username);
$sPass=mysqli_real_escape_string($conn,$password);
// For Security
$query="SELECT * From admin where username='$sUser' and password='$sPass'";
$result=mysqli_query($conn,$query);
if(mysqli_num_rows($result)==1)
{
session_start();
$_SESSION['dany']= $dbname;
header('location:adminPanel.php');
}
?>
セッションがチェックされている他のコードで、コードは次のとおりです。
ここ<?php
session_start();
if(!$_SESSION['dany'])
{
header('location:adminLogin.php');
}
?>
ライン:
if(!$_SESSION['dany'])
がためにfalseを返しますすべての有効な入力は無効な入力と同様に与えられます。 私はコード全体をコピーして新しいダミープロジェクトを作成しようとしましたが、そこで働いていました。私のactulaプロジェクトでは動作しません。
を '$ _ SESSION ...' false'を '戻っていますか...?つまり、 'if' *に入るか、' if' *に入りませんか?セッションが最初に成功したかどうかを確認しましたか?(mysqli_num_rows($ result)== 1は 'true'です)? – deceze
@deceze if(!$ _ SESSION ['dany'])がtrueを返します。これは$ _SESSION ['dany']がfalseと等しいことを意味します。 これはifブロックに入ります。しかし、私は、有効な入力ではいけません。 –
@deceze ---未定義のインデックス: "adminPanel.php"の3行目--- これはエラーとして表示されます。 –