Jyu Wong

Zugriffsüberprüfung

Allgemeines
Die Member Area erweitern wir nun mit einer einfachen, aber doch essentiellen Datei, die sich ‘inc.check.php’ nennen wird. Mit dieser Datei überprüfen wir stets, ob die Person eingeloggt ist und somit überhaupt Zugriff auf gewisse Dateien hat. Dieses Tutorial ist relativ kurz gehalten, da es an sich kaum Erklärung benötigt. Dennoch ist sie, wie bereits zu Beginn erwähnt, sehr wichtig.

Voraussetzungen
-> Einfaches Log In-System
-> Who Is Online?

Tutorial: Schritt 1; Erster und letzter Schritt
Wir erstellen erstmal die Datei ‘inc.check.php’ – das ‘inc’ ist eigentlich später für die Übersicht da. Mithilfe diesem Kürzel wissen wir, dass sie zum inkludieren erstellt wurde.

1
2
3
4
5
6
7
8
9
10
11
<?php
         if (!isset($_SESSION['Usr_Id']))
         {
?>
<script LANGUAGE="JavaScript">
    location.href='index.php'
</script>
<?php
                 exit;
         }
?>

Wir überprüfen ganz einfach, ob es die Session ‘Usr_Id’ gibt, die beim Log In einen Wert erhalten hat. Stimmt es überein, passiert nichts und der User hat Zugriff auf den gesicherten Bereich. Doch falls es die Session nicht gibt, wird der Benutzer zurück auf die Datei ‘index.php’ weitergeleitet. Hierbei verwenden JavaScript, da es damit 100% ohne irgendwelche Fehlermeldungen funktioniert. Es mag zwar unseriös wirken, aber für eine Weiterleitung brauchen wir eigentlich kein PHP.

Natürlich gibt es auch noch ein kleines Problem: was soll man machen, wenn der Benutzer JavaScript ausgeschaltet hat? Theoretisch kann dieser nun trotzdem die Datei aufrufen. Das wäre an sich auch möglich, wenn das ‘exit;’ nicht im Spiel wäre. Dieses verhindert die weitere Ausgabe der Datei – genau das, was wir eigentlich erreichen möchten. Es wird, falls es die Session ‘Usr_Id’ nicht gibt, nur noch der kleine JavaScript-Code angezeigt und nicht mehr, auch wenn JavaScript ausgeschaltet ist.

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Live
  • MisterWong
  • MSN Reporter
  • MySpace
  • Ping.fm
  • RSS
  • Yahoo! Bookmarks
  • Yigg
  • Reddit
  • Webnews.de
  • blogtercimlap
  • Internetmedia
  • BlinkList
  • Blogosphere News
  • LinkaGoGo
  • NewsVine
  • Technorati
  • ThisNext
  • Twitter
  • Upnews
  • Yahoo! Buzz
  • blogmarks
  • Global Grind
  • Wikio
  • Add to favorites
  • Current
  • Diigo
  • eKudos
  • Haohao
  • LinkArena
  • LinkedIn
  • MyShare
  • N4G
  • Posterous
  • StumbleUpon
  • Webride
  • Xerpi

1 Comment

Leave a Reply