fastix®: Sessions ! Fehlendes Verständnis ?

Beitrag lesen

Moin!

Du initialisierts die Session in beiden Skripten. Ich würde die Session-ID nicht anhängen, sondern als Cookie senden. (Session-Cookies sind unschädlich, die werden bei Browser-beenden gelöscht.

Bei der Anmeldung prüfts Du Benutzername und Passwort und schreibst bei Erfolg den Benutzername in die Session. Genau auf diesen prüfst Du ab sofort in jeder(!) Seite. (Ja, das _musst_ Du machen.)

<?php

Starten der Session:

session_start() or die('Fataler Fehler: Session konnte nicht initialisiert werden.');

?>

[...]

---index.php---

<?php
if ((!isset ($_SESSION['username'])) || ($_SESSION['username']=='')) {
    #Formular anzeigen
?>

<form action="login.php" method="post">
<pre>
Benutzer:   <input type='text' name='username'>
Passwort:   <input type='password' name='password'>
</pre>
</form>

<?php
}

end if

?>

---login.php---

<?php
session_start() or die('Fataler Fehler: Session konnte nicht initialisiert werden.');

if ((isset($_POST['username'])) && (isset($_POST['password']))) {
   # entfernen unerlaubter Zeichen:
   $_POST['username'] = ereg_replace('[[1]ÄÖÜäüöß]', '', $_POST['username']);
   $_POST['password'] = ereg_replace('[[2]ÄÖÜäüöß]', '', $_POST['password']);

# Deine Prüfung, ob Passwort und Benutzername passen:

if ([#Prüfung des Passwortes ok]) {
       $_SESSION['username']=$_POST['username'];
    } else {
       #abweisen:
       header('Location: http://deinserver/index.php');
   }
} else {
   #abweisen
   header('Location: http://deinserver/index.php');
}
?>

--- als Start jeder weiteren beliebigen Seite ---

das kann als Include verbaut werden....

<?php
session_start() or die('Fataler Fehler: Session konnte nicht initialisiert werden.');
if ((!isset ($_SESSION['username'])) || ($_SESSION['username']=='')) {
    header('Location: http://deinserver/index.php');
}

?>
---   / ---

MFFG (Mit freundlich- friedfertigem Grinsen)

fastix®

--
Als Freiberufler bin ich immer auf der Suche nach Aufträgen: Schulungen, Seminare, Training, Development

  1. :alnum: ↩︎

  2. :alnum: ↩︎