Verifizierung

syntraxx

Mitglied
Hallo Zusammen

Wie kann ich auf den nachfolgenden Seiten am einfachsten Checken, ob der User geloggt ist oder nicht Wenn er nicht geloggt ist soll er auf 'index.php' umgeleitet werden.

Mein Log-in Skript sieht wie folgt aus und funktioniert so weit.

Kann mir da jemand helfen. Herzlichen Dank

PHP:
<?php
include ('config.php');

session_start(); 
$sid = session_id(); 

$password = $_POST['password']; 
$username = $_POST['username']; 

$query = "SELECT * FROM pol_user WHERE password = '$password' AND username='$username'"; 
$result = mysql_query($query) or die(mysql_error()); 

while($row = mysql_fetch_array($result)){ 
  $checkuser = $row['username']; 
  $checkpassword = $row['password'];} 


  if($username == $checkuser && $password ==  $checkpassword) { 

     session_register("username","password"); 

    header ('Location: welcome.php'); 
    } else { 
    header ('Location: index.php'); 
  } 
?>
 
Zuletzt bearbeitet:
Verbesserungsvorschlag:

PHP:
<?php
$query = "SELECT 
                         * 
          FROM  
                      `pol_user` 
          WHERE 
                      `password = '".mysql_real_escape_string($password)."'' 
          AND
                       `username` ='".mysql_real_escape_string($username)."'
          ";
?>
"mysql_real_escape_string()" = Maskiert spezielle Zeichen innerhalb eines Strings
für die Benutzung in einer SQL-Anweisung.

Überlege Dir noch, ob Du dass Passwort nicht mit einer "md5" Verschlüsselung in der Datenbank
ablegst?
 
Zuletzt bearbeitet:
Nein, das Skript an sich funktioniert scho, aber ich möchte auf jeder Seite der Page kontrolliren, ober der User geloggt ist, nicht dass man einfach direkt ein unterlink eingeben kann und die Seite anschauen kann ohne eingeloggt zu sein.
Also wenn die Prüfung ok ist, dann soll die gewünschte Seite angezeigt werden, andernfalls soll auf index.php umgeleitet werden, damit man sich dort einloggen kann.

Wie bring ich das hin?
 
Zuletzt bearbeitet:
Ich habs mal so gemacht....

PHP:
session_start(); 
  if (isset($username) && isset($password)) { 
    } else { 
    header ('Location: index.php'); 
  }

Aber dies ist wohl nicht ideal, oder?
 
Das einfachste (aber nicht unbedingt sicherste) wäre, eine Sitzungsvariable als Flag zu setzen. Existiert diese in einer Sitzung, gilt sie als erfolgreich.
 
Du kannst auch in jeder Seite die nicht ohne Berechtigung gestartet werden soll das hier einfügen:
PHP:
<?php
     session_start(); 
     $sid = session_id(); 
     
     
     if( $_SESSION['username'] == TRUE){
     
         //Den Rest des Code...     
         
        }
     else{
     
     Header('HTTP/1.1 404 Not Found');
     
     
     }
?>
 
Zurück