0
我有2頁。這兩頁都有驗證表單。我希望在成功登錄第一頁(索引)時自動登錄第二頁。html/php登錄頁面(自動登錄第二頁,基於登錄索引頁面)
我該怎麼做?我應該使用單點登錄嗎?如果是,在這種情況下如何使用單點登錄?
我有2頁。這兩頁都有驗證表單。我希望在成功登錄第一頁(索引)時自動登錄第二頁。html/php登錄頁面(自動登錄第二頁,基於登錄索引頁面)
我該怎麼做?我應該使用單點登錄嗎?如果是,在這種情況下如何使用單點登錄?
一般而言,應該有一個登錄表單和機制。如果需要,應檢查其他頁面的身份驗證。 這是一個基本的機制,如果登錄
loginform.php
<?php
session_start();
if(isset($_SESSION['usr']))){
if(!is_null($_SESSION['usr']) || $_SESSION['usr'] != ''){
header('Location: yourpage.php');
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title> Login Form</title>
</head>
<body>
<div class="container">
<form method="post" action="login.php">
<div class="txt-big">Login</div>
<div class="field">
<label for="user_name">Username </label>
<input type="text" size="30" name="usr" id="usr" class="text-input">
</div>
<div class="field">
<label for="user_name">Password </label>
<input type="password" size="30" name="pswd" id="pswd" class="text-input">
</div>
<div class="field">
<input type="submit" value="Login" name="login" class="btn btn-submit" >
<input type="reset" value="Cancel" name="reset" class="btn btn-submit">
</div>
</form>
</div>
</body>
</html>
的login.php
<?php
session_start();
require ("mysqli.inc.php");
$username = $_REQUEST['usr'];
$password = $_REQUEST['pswd'];
$query = "Select * FROM `admin` WHERE username LIKE '" . $username . "' AND password LIKE '" . $password . "' ";
$r = mysqli_do($query);
if($r){
$_SESSION['usr'] = $username;
header("Location:"." yourpage.php");
}
else{
header("Location:"." loginform.php");
}
?>
logout.php
<?php
session_start();
session_destroy();
header('Location: loginform.php');
?>
在yourpage.php檢查
。這是做基本的方式
yourpage.php
<?php
session_start();
if(!isset($_SESSION['usr']) || is_null($_SESSION['usr']) || $_SESSION['usr'] == ''){
header("Location:"." loginform.php");
}
....
....
?>
注意:這是一個基本的樣品和不旨在是全面的解決方案。需要加強!
你如何使用驗證?首次登錄成功後,使會話在第二頁生效 –
您是否在使用會話? –
只需您尋找_SESSIONS_ –