1
セッションに問題があります。ユーザーがログアウトすると、そのことが機能するように見えます。ユーザーはメンバーエリアにアクセスできません。しかし、誰かがメンバーエリアページのURLバーにアドレスを書き込むと、メンバーページにアクセスしたり、メンバー専用ページをクリックしたりすることもできます。セッションはリンクをクリックすると機能しますが、URLにlinkadressを入力するかブラウザの「戻る」ボタンをクリックしても動作しません
これは、これはそれが一番上にすべてのメンバーシップのページを探す方法です私のコードは、login.php
<?php
session_start();
if(isset($_SESSION['usr_id'])!="") {
header("Location: profileuser");
}
include_once 'Db.php';
//check if form is submitted
if (isset($_POST['login'])) {
$email = mysqli_real_escape_string($con, $_POST['email']);
$password = htmlentities(mysqli_real_escape_string($con, $_POST['password']));
$result = mysqli_query($con, "SELECT * FROM table WHERE email = '" . $email. "' and password = '" . md5($password) . "'");
if ($row = mysqli_fetch_array($result)) {
$_SESSION['usr_id'] = $row['id'];
$_SESSION['usr_name'] = $row['email'];
$_SESSION['usr_fname'] = $row['name'];
$_SESSION['usr_ename'] = $row['ename'];
$_SESSION['usr_vip'] = $row['vipoo'];
header("Location: profile");
} else {
$errormsg = "<script>alert('Wrong!')</script>";
}
}
?>
のためにどのように見えるかです。
<?php
session_start();
if(!isset($_SESSION["usr_id"])){
header("Location: index");
exit(); }
include_once 'Db.php';
?>
キャッシュの問題のようです。あなたのPHPページでキャッシュヘッダーを送信しないことを確認してください。 –