Anfängerfragen - LogIn Probleme

VBMichi

Mitglied
Hidio,

ich lerne seit ca. einer Woche PHP.
An der Homepage an der ich gerade arbeite soll es einen internen Bereich geben in den sich jeder mit seinem Namen und seinem Passwort einloggen kann.
Diese werden vorher festgelegt, also nichts mit registrieren o.Ä. !

z.Z. sieht es ungefähr so aus:

Code:
<?
$name = $_POST["name"]
$passwort = $_POST["passwort"]

if($name == "VBMichi") 
  {
  if ($passwort == "geheimespasswort")
      {
      echo "Hallo VBMichi. Hier ensteht dein persönlicher interner Bereich!";
      }
  else
      {
      die("Das Passwort und/oder der Benutzername sind falsch. Bitte achten Sie auf die Groß- und Kleinschreibung.");
      }
  }
else
  {
  die("Das Passwort und/oder der Benutzername sind falsch. Bitte achten Sie auf die Groß- und Kleinschreibung.");
  }
?>

Jetzt meine Frage:

Wenn Name und Passwort richtig sind, möchte ich nicht einfach nur eine Zeile mit echo ausgeben, sondern eine richtige Seite. Wie klappt das?
Gibts da irgend ne Funktion wie 'Load VBMichiIntern.php' oder so?
Oder muss statt dem echo der ganze Code hin?

Vielen Dank schonma!

Grüße
 
Hi birnkammer,

mit include habe ich grad (in den PHP FAQ's Tutorial 3 zum einbinden von Seiten) rumprobiert. Momentan

Das Problem welches jetzt entseht, ist das wenn sich jemand nicht einloggt und einfach in der Adressleiste http://www.meineseite.de/intern.php eingibt, er auch draufkommt.

Vielleicht hat ja jemand Lust mir zu sagen wie ich das verhinder. Ich such solang mal in deinen angegebenen Seiten weiter, vielleicht werd ich fündig :)

Grüße
 
Vielleicht solltest du das ganze mit Sessions realisieren, also du hast ein Loginscript, sagen wir mal login.php:
PHP:
<?
session_start();
$name = $_POST["name"];
$passwort = $_POST["passwort"];

if($name == "VBMichi") {
  if ($passwort == "geheimespasswort")
      {
      $_SESSION['angemeldet'] = 1;
      header("Location http://.../geheimeseite.php?".strip_tags(SID));
      }
  else
      {
      die("Das Passwort und/oder der Benutzername sind falsch. Bitte achten Sie auf die Groß- und Kleinschreibung.");
      }
  }
else
  {
  die("Das Passwort und/oder der Benutzername sind falsch. Bitte achten Sie auf die Groß- und Kleinschreibung.");
  }
?>

geheimeseite.php:
PHP:
<?php
session_start();
if(!isset($_SESSION['angemeldet'])) {
header("Location: http://.../login.php");
} else {
?>
HTML-Code
<?php
}
?>
 
Ahh cool, danke. Probier ich nachher gleich aus!

Kann man Sessions eigentlich dann mit nem Boolean vergleichen?
Außer das man statt nur "TRUE" und "FALSE" auch noch andre Texte angeben kann (zB "ANGEMELDET" und so), oder?

Grüße
 
Jap...

PHP:
if(isset($_SESSION['angemeldet'])) {
  echo "Bitte anmelden!<br/>";
  echo "<a href="./login.php">Login</a>";
} else {
// Seite anzeigen
}
 
Zurück