0
おはよう/夕方、PHPログインとセッション
私は立ち往生しており、PHPでいくつかの助けが必要です。
管理ダッシュボードをコード化しようとしています。ユーザーがログインしているかどうかを確認したい場合は、ログインページにリダイレクトします。
私のindex.phpはこれです:間違ったことの多くがあり
<?php
// If we AREN'T on the login page , check if session exist. If not send to login
if($pagename != "login")
{ if(!$_SESSION['login'])
{
header('location: login.php');
exit();
}
}
?>
:マイログインページ
<?php
$pagename ="Index";
@require_once('inc/head.php');
?>
<body>
CONGRATS! Welcome to the Admin dashboard.
</body>
</html>
:
<?php
$pagename = "login";
$adminUser = "admin";
$adminPass = "admin";
@require_once('inc/head.php');
// If POST is submitted and IDs match the ones set
if($_SERVER["REQUEST_METHOD"] == "POST")
{
if($_POST["username"] == $adminUser && $_POST["password"] == $adminPass)
{
session_start();
$_SESSION["username"] = $adminUser;
$_SESSION["login"] = true;
echo '<script>alert("Congrats, you logged in");
window.location = "index.php"; </script>';
/* I skip the line underneath because for unknown reasons my code
Doesn't fully run through. So I redirected with the JS above instead.
header("Location: index.php");
exit(); */
}else{
echo '<script>alert("Incorrect username or password!'");</script>';
}
}
?>
<html>
<!-- login page here -->
</html>
そして、ここに私のhead.phpを行きますこれと私は知っていますが、現在私は問題のログインを修正しようとしています。私がログインするたびに、正常にログインしたことを示すJSポップアップが表示されますが、インデックスにリダイレクトされません。私は私のindex.phpに送られると思います(私のJSリダイレクトが機能しない理由はありません)が、私のインデックスは私をログインに戻してくれています。
セッションはそれらを使用するすべてのページで開始されましたか? head.phpファイルのようには見えません。 –
'session_start();'が** head.phpにありません** –
しかし、私はユーザーがログインした後にセッションを作成したいだけです。あるいは、関係なく作成する必要がありますか?に? – FrenchMajesty