0
後,我做了一個簡單的登錄頁面,在用戶簽訂但我仍然有一定的問題重定向用戶相同的頁面登錄
要重定向到同一頁面,即login.php中,但更改頭選項,比如用「註銷」替換「登錄」。
登錄後,如果我訪問任何其他鏈接,如「家」,「contactus」或任何其他鏈接,會話保持不能登錄,如果我甚至嘗試直到會話被銷燬。
如果你可以用任何解釋簡單的登錄項目提供,這將是巨大的。
這裏是我的登錄腳本
的header.php
<link rel="stylesheet" href="page_style.css" type="text/css" />
<div class="container">
<div id="header">
<div id="header_text">
<b><a href="div_tuts.php">Home</a></b>
<b><a href="aboutus.php">AboutUs</a></b>
<b><a href="register.php">Register</a></b>
<b><a href="login.php">SignIn</a></b>?>
<b><a href="contactus.php">ContactUS</a></b>
</div>
</div>
<div id="main">
</div>
</div>
的login.php
<?php
/**
* @author
* @copyright 2013
*/
session_start();
ob_start();
include "div_tuts.php"
?>
<link rel="stylesheet" href="page_style.css" type="text/css" />
<form action="login_check.php" method="POST" id="main">
<div id="loginbox">
Username : <input name="uname" type="text" /><br />
Password : <input name="pass" type="password" /><br />
<input name="submit" type="submit" value="LogIn" /><br />
<?php echo $_SESSION['error'];?>
</div>
</form>
<?php session_destroy();?>
login_check.php
<link rel="stylesheet" href="page_style.css" type="text/css" />
<?php
/**
* @author
* @copyright 2013
*/
ob_start();
session_start();
include 'config.php';
$username = $_POST['uname'];
$password = $_POST['pass'];
if(isset($username) && isset($password))
{
if(!empty($username) && !empty($password))
{
$query = "SELECT username FROM users WHERE username = '$username' AND password = '$password'" ;
$query_run = mysql_query($query);
if($query_run)
{
$mysql_num_row = mysql_num_rows($query_run);
if($mysql_num_row == 0)
{
$_SESSION['error'] = "You entered Wrong username/password";
header("Location: login.php");
}
else if($mysql_num_row == 1)
{
$user_name = mysql_result($query_run,0,'username');
$_SESSION['user_id'] = $user_name ;
header("Location: loggedin.php");
}
}
}
else
{
$_SESSION['error'] = "Please provide username/password";
header("Location: login.php");
}
}
?>
loggedin.php
<?php include "div_tuts.php"; ?>
<div id="main" >
<div id="loginbox">
<?php
/**
* @author
* @copyright 2013
*/
ob_start();
session_start();
if (isset($_SESSION['user_id']) && !empty($_SESSION['user_id']))
{
echo $_SESSION['user_id'];
echo ',you are logged in <a href = "logout.php">LogOut</a>';
}
else
{
header("Location: login.php");
}
?>
</div>
</div>
感謝@ Emilo :)。我更新了我的問題並提供了href部分。在PHP編碼之間放置php是不錯的做法。你能爲我改變它嗎? – wek
我更新了答案,是一個不好的實踐,將php嵌入到html中 –