Peter: Sessions

Beitrag lesen

OK, ich versuchs mal. Hier mein Code, der in der Datei login.php steht:

  
<?php  
 if ($_SERVER['REQUEST_METHOD'] == 'POST') {  
  session_start();  
  
  $name = $_POST['name'];  
  $pwd = $_POST['pwd'];  
  
  # Verbindung zur Datenbank herstellen  
  include("inc/connect.inc.php");  
  
  $sql = "SELECT username, password, status, last_login FROM user WHERE username='" . $name . "'";  
  
  $result = mysql_query($sql)  
   or die ("Couldn't execute query!");  
  
  $row = mysql_fetch_row ($result);  
  
  if ($name == $row[0] && $pwd == $row[1]) {  
   $_SESSION['angemeldet'] = true;  
   $_SESSION['name'] = $row[0];  
   $_SESSION['status'] = $row[2];  
   $_SESSION['last_login'] = $row[3];  
  
  
   // Weiterleitung zur geschützten Seite  
   if ($_SERVER['SERVER_PROTOCOL'] == 'HTTP/1.1') {  
    if (php_sapi_name() == 'cgi') {  
     header('Status: 303 See Other');  
     }  
    else {  
     header('HTTP/1.1 303 See Other');  
     }  
    }  
  
   header('Location: Hier steht die URL...');  
   exit;  
  
   }  
  
 }  
  
?>  

Danach kommt der Formularteil in HTML in der selben Datei.

Dann gibt es noch die Datei auth.php, die in jeder geschützten Datei als ersten eingebunden wird:

  
<?php  
  
 session_start();  
  
 if (!isset($_SESSION['angemeldet']) || !$_SESSION['angemeldet']) {  
  header('Location: URL zum Login-Formular...');  
  exit;  
  }  
  
?>  

OK, ich hoffe, dass war jetzt nicht zu viel Code und auch noch richtig in mein Posting gebastelt...