У меня есть это приложение, которое работает на тестовом сервере, но не работает. Рабочая версия отображает зарегистрированное сообщение с пустым именем пользователя вместо до тех пор, пока вы не выйдете из системы и не войдете снова! Тестовая версия не делает этого и правильно отображает ссылку для входа, пока вы фактически не войдете в систему. Я не написал код, поэтому я в замешательстве!
Первый файл - /Staff/Schedule/Schedu-Mod_Input.php
<?php
if($_SESSION['isLoggedin'] == 'Yes'):
?>
<p>You are logged in as <b><?php echo $_SESSION['SESS_USER_USERNAME'];?></b></p>
<?php else: ?>
Please <a href="/Admin/login.php/">login </a>here <br />
<?php endif;?>
Сессия создается во втором файле с именем login.php
<?php
session_name('SESS_IFTC'); // Set the session name
session_start();
$special_prefix = "";
include($_SERVER['DOCUMENT_ROOT'].$special_prefix.'/Includes/Connect.php');
include($_SERVER['DOCUMENT_ROOT'].$special_prefix.'/Includes/Functions.php');
$shiftdate = $_GET['shiftdate'];
$mod = $_GET['mod'];
if (isset($_POST['username']) && isset($_POST['upassword'])) {
$query = "SELECT * FROM users WHERE username = '".addslashes($_POST['username'])."' AND password = '".base64_encode($_POST['upassword'])."' AND status='active' ";
$result = mysql_query($query) or QueryFail($query);
$row = mysql_fetch_array($result);
$_SESSION['isLoggedin'] = '';
$_SESSION['SESS_IS_ADMIN'] = '';
if(!empty($row) && is_array($row)) // CHECK IS user valid
{
$_SESSION['SESS_IS_ADMIN'] = 'No';
if($row['usertype'] == 'admin') $_SESSION['SESS_IS_ADMIN'] = 'Yes';
$_SESSION['SESS_USER_ID']= $row['id'];
$_SESSION['SESS_USER_USERNAME'] = ucfirst($row['username']);
$_SESSION['SESS_USER_EMAIL'] = $row['email'];
$_SESSION['isLoggedin'] = 'Yes';
//print_r($_SESSION);
$query = "UPDATE users SET "
." lastaccess = '".date("Y-m-d H:i:s")."' "
." WHERE id = ".$row['id'];
mysql_query($query);
if($_REQUEST['mod'] == 'staff'){
$shiftdate = $_REQUEST['shiftdate'];
header("Location: /Staff/Schedule/Schedu-Mod_Input.php?shiftdate=$shiftdate");
exit;
}
header("Location: /Staff/Schedule/Schedu-Mod_Input.php");
exit;
}else{
$errorMsg = "Invalid Username or Password! Please try again";
}
}
unset($_SESSION);
?>
Что не так?