私のサイトでこの大きな問題が発生しています。何が起こっているのかというと、ページからページへと移動しているときに、SESSIONが維持されていません。同じディレクトリにあるいくつかのソースコードを次に示します。さて、login.phpとlogout.phpのiframeを含むモーダルボックスのあるインデックスがあります。ログインしますが、別のページに移動するとセッションが実行されず、[ログイン]をクリックすると、Imはすでにログインしていて、セッションがあります。また、どうすれば自分のWebサイトにCookieを追加できますか?
単なるスニペット:
header.phpの一部がすべてのページに表示されます
<?php session_start(); if($_SESSION["username"]) { ?>
<div style="display: inline-block; font-size: 14px; padding-left: 20px;">Hello <?php echo $_SESSION['username']; ?>
login.php
<?php session_start(); require_once('connections/Main.php');
if($_SESSION['username']) {
echo '<div class="error_message">Attention! You, '.$_SESSION['username'].' are already logged in.</div>';
echo "<br />";
echo "Go <a target='top' href='index.php'>back</a> to the page you were viewing before this.</li>";
exit();
}
... database funcctions go here then add session
if($rowCheck > 0) {
while($row = mysql_fetch_array($result)) {
// Start the session and register a variable
session_start();
$_SESSION['username'] = $user;
//session_register('username');
echo '<script> parent.document.location.href = "index.php"; </script>';
}
logout.php
<?php session_start(); ?>
<?php if($_SESSION['username']) {
session_unset();
session_destroy();
header("Location: index.php"); }
else { header("Location: index.php"); } ?>