1
我正在使用正常工作的登錄系統製作網頁。 我也做了一個人必須登錄才能查看的頁面。它也工作正常,當用戶登錄時它也會給出一個歡迎的「用戶名」消息。會話變量在某些頁面上丟失
但是,由於未知原因,此會話變量未存儲到其他頁面。問題是我使用了與用於登錄限制的頁面相同的方法。
以下是我的登錄頁面。 (工作正常)。
<?php
session_start();
?>
<form id="login_form" method="post" action="">
<p>
<?php
if(isset($_POST["username"]) && isset($_POST["password"])){
$username = $_POST["username"];
$password = $_POST["password"];
if(strlen($username) < 4 || strlen($password) < 4){
echo "Username or Password are invalid.";
}else{
require("connect.php");
$login = mysql_query("SELECT * FROM users WHERE username = '$username' AND password = '$password' ") or die(mysql_error());
if(mysql_num_rows($login) == 0){
echo "Username or Password are incorrect!";
} else{
require("member.php");
$member_info = mysql_fetch_assoc($login);
setMember($member_info["id"]);
$_SESSION['user'] = "$username";
echo "Welcome ".$member_info["fname"]." ".$member_info["lname"]."<br />";
echo "Redirecting... Please wait.";
jumpTo("my_logs_testing.php",2);
}
//Free result & close connection.
mysql_free_result($login);
mysql_close($link);
}
}else{
}
?>
</p>
<table frame="box" bgcolor="" width="40%" border="0" cellpadding="6" align="center">
<tr>
<td colspan="2"><div align="center"><font color="#FFFFFF"><strong>Diving Advisor | Log In System</strong></font> </div> </tr>
<tr>
<td width="25%"><font color="#FFFFFF"><strong><label for="username2">Username:</label></strong></font></td>
<td width="75%" align="left"><input name="username" type="text" id="username" size="30" maxlength="20" /></td>
</tr>
<tr>
<td><font color="#FFFFFF"><label for="password"><strong>Password:</label></strong></font></td>
<td align="left"><input name="password" type="password" id="password" size="30" maxlength="20" /></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="submit_login" id="submit_login" value="Log In" /></td>
</tr>
</table>
</form>
這是與登錄限制(工作正常)的頁面。
<?php
session_start();
$current_user = $_SESSION['user'];
require("member.php");
if(!isMember()){
header("Location: login.php");
} else {
?>
<?php
if(mysql_connect('localhost', 'root','') && mysql_select_db('diving_advisor')){
echo "Welcome ".$current_user;
$errors = array();
if(isset($_POST['datepicker'],$_POST['location'],$_POST['description'])) {
cont.......................
這是它不工作(會話變量中的某個頁面似乎丟了!這裏的問題!!!!
<?php
session_start();
$current_user = $_SESSION['user'];
require("member.php");
?>
Here is code from template.......................
Then the editable region....
<?php
echo $current_user;
?>
<p><strong>Heading 1</strong></p>
<p>This is the home page of the diving advisor application.
Lore......
回聲$ currentuser上印刷什麼該頁面。這是假設打印登錄的用戶,但由於某種原因,事實並非如此。
請幫助,因爲我真的不知道什麼是錯的! 韓國社交協會提前。
你嘗試var_dump($ _ SESSION);檢查會話是否正確存儲? – Fabio 2013-04-29 21:17:18
可能是你打電話給session_start();在require(「member.php」); ? – voodoo417 2013-04-29 21:26:05
在成員頁我有一個函數Tat檢查如果用戶登錄.....但我沒有會話啓動 – user2307236 2013-04-30 21:11:12