我在這裏有一個嚴重的問題。我用會話創建了一個用戶系統。 問題是隻有當您登錄時纔會看到內容。例如,在導航欄中,登錄按鈕被替換爲一個賬戶按鈕。PHP包含頁面內容不刷新
現在我的問題: 每頁php-includes navbar.php。 例如在index.php文件寫的是:
<body>
<?php include("navbar.php")?>
</body>
的login.php中重定向到的index.php:
header("Location: index.php");
但是,index.php文件不會刷新。用「F5」進行硬刷新後,每件事情都很好。
我也試過meta標籤,以防止在緩存中加載頁面。
任何想法?
的index.php:
<html lang="en">
<head>
...
</head>
<body >
<?php include("navbar.php")?>
<div id="wrap">
...
</div>
</body>
</html>
navbar.php
<div class="navbar">
<?php
session_start();
if (!isset($_SESSION['logged']) || !$_SESSION['logged'])
{?>
...Sign in etc...
<?php
}
else
{?>
...Accounting...
<?php
}?>
</div>
的login.php:
<html>
<head>
</head>
<body>
<?php include("navbar.php"); ?>
<div class="container">
<form class="form-signin" action="logon.php" method="post" >
...
<button type="submit">Login</button>
</form>
</div>
</body>
</html>
logon.php:
<?php
if login successfull //pseudo code
header("Location: http://www.***.com/index.php");
}
else
{
header("Location: http://www.google.de");
}
exit;
?>
什麼是您的PHP文件的緩存限制?談論.htaccess –
因爲它是一個動態文件,一般的做法是強制不緩存 –
你在哪裏包括login.php文件?在調用'header'之前你是否回聲?在設置標題之前,文件中是否有HTML?如果是這樣的話:將'header'移動到頂端,或使用'ob_start()' –