Andere Seiten schützen

Hallo,
ich habe hier nun ein Passwortschutz:

[php]<?PHP
session_start();

$passwort = „gemuese“; // Hier bitte gewuenschtes Passwort eintragen

if (isset($_POST[‚go‘])){

$check = $_POST["password"];  

if ($check == "$passwort"){ 
    $_SESSION["access"] = "okay";  
}else{ 
    echo "Falsches Passwort ..."; 
} 

}
?>

Passwortschutz mit PHP <?php

if ($_SESSION[„access“] == „okay“) {

// Geschuetzter Bereich …
?>

Heute hier und Morgen dort, blablabla …
Ich bin ein passwortgeschuetzter Text und du nicht!

<? }else{ // close geschuetzter Bereich ?> Bitte Passwort eingeben ... <?php } // close Loginform ?> [/php]

Wenn ich nun noch andere Datein (z.b. Admin_2.php etc.) schützen bzw. in das Pw-Schutz Verfahren einbinden will, wie mache ich das ?

Einfach in jede Datei

[FONT=Courier New]if ($_SESSION[„access“] == „okay“) { [/FONT]

[FONT=Courier New]schreiben ?[/FONT]

Ich habs jetzt nicht sonderlich groß überflogen, um evtl. andere Fehler zu finden, aber ja, grundlegend sollte das reichen.

Also wenn ich das richtig verstehe müsste eine zweite passwortgeschützte Seite so aussehen:

[PHP]

Passwortschutz mit PHP <?php

if ($_SESSION[„access“] == „okay“) {

// Geschuetzter Bereich …
?>

Halllo HHallooo Halloooo
DAS IST DIE ZWEITE geschütze Seite …

<? }else{ // close geschuetzter Bereich ?> Bitte Passwort eingeben ... <?php } // close Loginform ?> [/PHP]

Jo, richtig.

Muss ich auch nichts includen ?
Die PW-Einstellungen oder so?

includen brauchst du nur wenn du php-code in eine externe datei auslagern willst.

Eigendlich nicht, da ja die
[php]
if ($check == „$passwort“){
$_SESSION[„access“] = „okay“;
[/php]
nur okay ist wenn das pw übereinstimmt, und dann wird ja die Session von Seite zu seite weitergegeben und wenn du am anfang ja prüfst mit
[php]
if (isset($_SESSION[„access“]) {
//code
}
else {
//code
}
[/php]
kann ja nur der if teil kommen wenn access einen wert hat, und dafür brauchst du ja ke pw einstellungen.

sowas ist schlecht :slight_smile:

ich tendiere dafür benutzername und hash des passwortes in der session zu speichern und bei jedem seitenaufruf neu zu checken …

Das ist für ihn ein Script zum lernen mehr nicht.

PS: Du hast in der zweiten Datei session_start(); vergessen

ich sage nur, es sind halbe sachen …

warum steht eigentlich hier [php]if ($check == „$passwort“){ [/php] $passwort unter anführungszeichen ?

da sind noch mehr so nette sachen in den paar zeilen code, z.b. würde eine if() reichen anstatt 2 zu benutzen u.s.w.