4 回答

TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超8個(gè)贊
它正在發(fā)生,因?yàn)槟阌幸粋€(gè)重定向循環(huán)。這就是正在發(fā)生的事情。
用戶注銷并且會(huì)話未設(shè)置
然后將用戶重定向到 index.php,您在其中調(diào)用“config.php”
在 config.php 中,您檢查用戶是否未登錄。他沒(méi)有登錄,所以它告訴它重定向到 index.php(然后您又回到了第 2 點(diǎn),然后一圈又一圈地走)
如果用戶已登錄,請(qǐng)將您的 config.php 更改為重定向,例如
// Redirect to the dashboard signed in
if(isset($_SESSION['user'])){
header('location: http://localhost/dashboard.php');
}

TA貢獻(xiàn)1906條經(jīng)驗(yàn) 獲得超10個(gè)贊
加載 config.php 后開(kāi)始會(huì)話。否則 if 語(yǔ)句下的條件將始終為真,并且它將作為無(wú)限循環(huán)工作。首先啟動(dòng)會(huì)話,然后加載 config.php 文件。如果您的 index.php 文件是為未登錄的用戶準(zhǔn)備的,則在加載 index.php 時(shí)不要包含 if 塊來(lái)檢查用戶是否已登錄。因?yàn)閷?duì)于來(lái)賓用戶,這將創(chuàng)建相同的無(wú)限循環(huán)。該部分應(yīng)僅添加到登錄用戶的頁(yè)面。

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超13個(gè)贊
你的 config.php 中沒(méi)有會(huì)話......所以這樣做......
<?php
session_start();
require_once 'config.php';
所以你的會(huì)話也將在 config.php 中?;蛘邔?session_start() 行帶到 config.php,那可能會(huì)更好。

TA貢獻(xiàn)2037條經(jīng)驗(yàn) 獲得超6個(gè)贊
您已經(jīng)創(chuàng)建了無(wú)需用戶登錄即可工作的網(wǎng)址白名單。例如,$whitelist = ['Users/login', 'Users/register', '/'];并在重定向條件下檢查當(dāng)前網(wǎng)址
if(!isset($_SESSION['user']) && !in_array($current_url, $whitelist)){
header('location: http://localhost/index.php');
}
并session_start()從其他答案中發(fā)出。
- 4 回答
- 0 關(guān)注
- 384 瀏覽
添加回答
舉報(bào)