“會話.php”
if(!isset($_SESSION['username']))
{
header('Location: ./index.php'); // Redirecting To Home Page per il login
exit;
}
session_start();// Start new session or resume existing session
//echo 'session_id: '.session_id();
require "connessione.php";
$connessione = connessionedb("db");
$username=$_SESSION['username'];
$username = $connessione->real_escape_string($username);
$query = "SELECT * FROM utenti where idUtente= '$username' ";
$risultato = mysqli_query($connessione, $query);
$num_record = mysqli_num_rows ($risultato);
if ($num_record!=1)
{
header('Location: ./index.php'); // Redirecting To Home Page per il login
$con->close();
exit;
}
我希望它在沒有會話時將我送回家中,但它會進行重定向回圈。
uj5u.com熱心網友回復:
當你已經打開時不要做這個檢查index.php。
if($_SERVER['PHP_SELF'] != '/index.php' && !isset($_SESSION['username']))
{
header('Location: ./index.php'); // Redirecting To Home Page per il login
exit;
}
uj5u.com熱心網友回復:
在索引檔案中使用不同的會話檢查,例如
if(isset($_SESSION['username'])){
header('Location: ./dashboard.php'); // Redirecting To Dasboard Page Already logged in
exit;
}
uj5u.com熱心網友回復:
在 session_start(); 之前不會創建您的 $_SESSION 變數;叫做。由于在評估 $_SESSION['username'] 之后您有 session_start(),它總是會回傳未設定,因為 $_SESSION 本身尚未設定。
此外,正如 Barmar 指出的那樣,如果您在 index.php 檔案中需要 session.php,而您還沒有開始會話,那么它總是會導致回圈。因此,既然您已經在 index.php 中,請退出。不要重定向。
下面是代碼修改:
session_start();// Start new session or resume existing session
if(!isset($_SESSION['username']))
{
exit;
}
//echo 'session_id: '.session_id();
require "connessione.php";
$connessione = connessionedb("db");
$username=$_SESSION['username'];
$username = $connessione->real_escape_string($username);
$query = "SELECT * FROM utenti where idUtente= '$username' ";
$risultato = mysqli_query($connessione, $query);
$num_record = mysqli_num_rows ($risultato);
if ($num_record!=1)
{
header('Location: ./index.php'); // Redirecting To Home Page per il login
$con->close();
exit;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/476724.html
