即時通訊無法創建會話。
我的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'])
正在恢復假我給出的每個有效輸入以及無效輸入。 我試圖複製整個代碼並創建一個新的虛擬項目,它在那裏工作。但不適用於我的actula項目。
'$ _ SESSION ...'是'返回... FALSE'?這是否意味着它*進入了'if' *或者它沒有進入'if' *?你是否首先檢查了會話是否成功啓動*(mysqli_num_rows($ result)== 1'爲'true')? – deceze
@deceze if(!$ _ SESSION ['dany'])返回true。這意味着$ _SESSION ['dany']等於false。 它進入if塊。但我不應該在有效的投入。 –
@deceze ---未定義的索引:第3行的「adminPanel.php」中的dany --- 這就是即時錯誤的原因。 –