3 つのインターフェース logon.php / checklogon.php /detail.php / logout.php があります
logon.php - session_start() およびログインフォームなどを含むその他の静的 HTML ログインボタンをクリックした後、checklogon.php にジャンプします
checklogon.php - データベースに接続し、ユーザー情報を返します。成功すると $_SESSION['user'] = ユーザー関連情報となり、detail.php にジャンプします。
$user = UserBusiness::GetUser($_POST["username"], $_POST["password"]);if($user == null){ header("location: /index.php"); exit;}$_SESSION['user'] = $user;
<?php session_destroy(); header("Cache-Control: private, must-revalidate, no-store"); header("Pragma: no-cache"); header("Expires: Sat, 26 Aug 1997 05:00:00 UTC"); header("location: /logon.php"); exit();?>
見てみるには、detail.php の検証部分を投稿する必要があります
<?php echo('<a href="/Logout.php">Logout</a>');?>
見てみるには、detail.php の検証部分を投稿する必要があります
れー
これですか?
セッションが存在するかどうかを確認するためのコードはありません。セッションを破棄しても、何の役に立ちますか?
ログイン PHP を変更して、次のコードを追加します。
<?php echo('<a href="/Logout.php">Logout</a>');?>
<?php session_start(); //使用session存储用户信息 if(isset($_POST["username"])) //数据库中读取username用户名 { $ss_user_id=""; //利用User累的IsValid()方法判断所输入的用户名和口令是否正确 require_once("userclass.php"); //获取用户信息的类 $user=new User(); //如果正确,转到网站首页 if($user->IsValid($_POST["username"],$_POST["password"],$ss_user_id)) { $_SESSION["ss_user_id"]=$ss_user_id; //用户ID echo "<script language='javascript'>"; echo " location='index.php';"; echo "</script>"; } //如果不正确,刷新页面 else { echo "<script language='javascript'>"; echo " alert('用户名或密码错误');"; echo "</script>"; } }?>