我遇到了PHP和會話問題。這是我的dictionary.php代碼。PHP會話問題
<?php
if(!isset($_SESSION['auth'])){
$_SESSION['auth'] = 0;
}
if($_SESSION['auth'] == 0){
header("Location: index.php");
}
?>
因此,有這應該會話「身份驗證」設置爲0或1的index.php:
<?php
$msg = "";
//Password handler
if(!isset($_POST['password'])){
$password = "";
}else{
$password = $_POST['password'];
}
if(!isset($_SESSION['auth'])){
$_SESSION['auth'] = 0;
}
//Username handler
if(!isset($_POST['username'])){
$username = "";
}else{
$username = $_POST['username'];
if($username == "potato" && $password == "poteto"){
$_SESSION['auth'] = 1;
header("Location: dictionary.php");
}else{
$msg = "<br />
<font color=\"#FF0000\">Invalid username or password!</font><br />";
}
}
if($_SESSION['auth'] == 0){
header("Location: dictionary.php");
}
?>
(以上可能是不好的做法或東西,但我只是爲了一個學校項目,我不希望其他人看到文件dictionary.php。)
index.php使用POST方法的形式發送$username
和$password
,以防萬一你沒有'尚未注意到。
當我輸入登錄信息「馬鈴薯」和「poteto」時,它將我重定向到dictionary.php,但立即將我引回index.php。我試過調整上面的代碼,但沒有運氣。
如果有人需要我向他們展示此信息,那麼我可以提供一個URL。
謝謝。
我在任何地方都看不到'session_start()'。首先解決它。閱讀:http://php.net/manual/en/session.examples.basic.php –
「錯誤310(net :: ERR_TOO_MANY_REDIRECTS):有太多的重定向。」 – Raymonf
@RBLXDev:你已經創建了一個重定向循環。這些對於排除故障來說不是那麼簡單,但是它有什麼用處,現在你需要麻煩地拍攝它。 – hakre