前提・実現したいこと
このページのコード http://keylopment.com/faq/1197/
を参考にしてログインシステムを作成しておりますが、ログイン後の他のページを作成したいのですがどのようにすればよいでしょうか?
例えば、example.jp/index.phpが以下のとおりで、example.jp/about/index.phpを作成したい時に、どのようにしたらよいかわかりません。
index.phpのソースコード
<?php session_start(); $message = ''; $user = 'ユーザー名の文字列'; $password = 'パスワードをMD5に変換した文字列'; if(isset($_POST['login'])){ if ($_POST['user'] == $user && md5($_POST['password']) == $password){ $_SESSION["LOGIN"] = 'ON'; $message = 'ログインしました。'; } else{ $message = 'ユーザー名かパスワードが間違っています。'; } } if( !empty( $_SESSION['LOGIN'] ) && $_SESSION['LOGIN'] == "ON" ): $message = 'ログインしています。'; endif; if(isset($_POST['logout'])){ if( !empty( $_SESSION['LOGIN'] ) && $_SESSION['LOGIN'] == "ON" ): session_destroy(); session_start(); $message = 'ログアウトしました。'; endif; } ?> <!DOCTYPE html> <html> <head> <title>ログイン認証</title> </head> <body> <h1>ログイン認証</h1> <?php if( !empty( $_SESSION["LOGIN"] ) && $_SESSION["LOGIN"] == "ON" ): ?> <div class="section"> <p style="color: red;"><?php echo $message; ?></p> <form method="post" action="./"> <input type="submit" name="logout" value="ログアウトする"> </form> </div> <?php else: ?> <div class="section"> <p style="color: red;"><?php echo $message; ?></p> <form method="post" action="./"> <label for="user">ユーザー名</label> <input id="user" type="text" name="user"> <br> <label for="password">パスワード</label> <input id="password" type="password" name="password"> <br> <input type="submit" name="login" value="ログイン"> </form> </div> <?php endif; ?> </body> </html> ```PHP ソースコード ```example.jp/about/index.phpに試したこと
body直下に
<?php session_start(); if(!isset($_SESSION["user_name"])) { $no_login_url = "index.php"; header("Location: {$no_login_url}"); exit; } ?>とつけましたがエラーになります。
PHPは勉強初めたばかりでよくわからないのですみません。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー