2016-09-17 3 views
-1

PHPページをすべての単一ページを保護するために含めると、ログイン後にユーザー名が表示されます。他のページのコンテンツをパスワードで保護し、header.phpにログインしているユーザーを表示するためのPHPページを含める

また、ログインユーザーがCVや個人情報などの提供したデータのみを制限しますが、他のユーザーの情報は表示しません。

構造は、以前の記事と同じになり

のindex.php header.phpの上のタイトルがmenu after user loginを変更する

(header.phpの、content.phpとfooter.phpを含みます)

ありがとうございます。

よろしく

アンディあなたはそれがこのようなものになるだろうことを保証するためにスクリプトをしたいまあ場合

答えて

0

:最初

:あなたはデザインパターンを使用していないと仮定すると、それは基本的なPHPであります"scripts(folder)css(folder)js(folder)index.php header.php and footer.php"のようなアーキタイプを持つプロジェクトです。 "security.php"を作成できます。

<?php 

    session_start(); //starting session to acces to it 

    if(empty($_SESSION["username"])){// if there's no data username in session 
    header("location: ./login.php"); //go and take them out of here! 
    } 

?> 

これで、保護されたページに「security.php」を含めて「login.php」ページを作成するだけですぐに使用できます。

例:セキュリティを含む。

<?php 
//@mySecurePage 
include "security.php"; 

//My Page Content Code or event header code if you want validation after loading anything (Best) 
?> 

2番目:のようなログインページを作成します。メニューバーの負荷ユーザ名:今、私たちはほぼ完了です

<?php 
    if(!empty($_POST["username"]) && !empty($_POST["password"])){// if all data from login was sent 
    if($_POST["username"] == "me" && $_POST["password"] == 1234){//your validations here 
     session_start();//start session to acces it 
     $_SESSION["username"] == $_POST["username"];//allocate username 
     header("location: ./securedPageHere.php");//forward to a securedPage 
    } 
    } 
?> 
<!DOCTYPE html> 
<html lang="en"> 
    <head> 
    <meta charset="utf-8"> 
    <title>My Login Page</title> 
    </head> 
    <body> 
     <form class="" action="" method="post"><!-- action is empty to send data to same page (login)--> 
     <input type="text" name="username" value="" placeholder="username"> 
     <input type="password" name="password" value="" placeholder="password"> 
     <input type="button" name="login" value="Login"> 
     </form> 
    </body> 
</html> 

は、ちょうどあなたのメニューバー

第三に、ユーザー名をロードする必要があります。ちょうどあなたがあなたがセッションを破壊する必要がありLogutボタンを使用するために今すぐ

<div><?php print($_SESSION["username"]); ?></div> 

セッションがすでに始まってきた「security.php」ロードされている場合は覚えているので、それにリスナーを追加し、(値accesingセッションを追加同じように、スクリプトを実行します。

<?php 
    unset($_SESSION); //clear session array 
    session_destroy(); //Destroy session 
?> 

は、それがあなたのお役に立てば幸いです

EDIT:。ただ、ログインからユーザー名(最高のID)のデータを使用してアクセスされるデータを制限するために、セッションの配列で保存されたデータを検証:)。

関連する問題