Daniel: Danke & Zusatzfrage

Beitrag lesen

Ahoi Gerhard,

Was mich noch interessieren würde: Wann verfällt eine Session von alleine?

das kommt auf die einstellungen des Servers an. das kann man so pauschal nicht sagen.

Und könnte mal jemand nachschauen ob das jetzt so ungefähr sicher ist?

ja sicher kann man nachschaun.


login.htm

...


check.php

<?
  session_start();
  $vUser=$_REQUEST['user'];
  $vPasswort=$_REQUEST['passwort'];

Warum reauest wenn du post machst?

if($vUser=="Gerhard"&&$vPasswort=="hallo")

benutzername und pwd sollten nie im klartext im code stehen. lager das
pwd und den benutzernamen aus. in eine seperate datei außerhalb des
root-verzeichnisses oder in einen unterordern der mit htaccess
geschützt ist und alle http anfragen blockt.

{
    $_SESSION["user"]=$vUser;
    $_SESSION["passwort"]=$vPasswort;

warum nicht $_SESSION["login"]=true;?

header("Location: geheim.php");
  }
  else
  {
    echo "Falsche Angaben";
    session_destroy();

^^ merk dair das für den logout button damit sich keiner als der user mit der SID welches durch das einloggen als geauthet gillt einschmuggeln kann. daher empfiehlt es sich auch immer den logout-button zu benutzten.

}
?>


geheim.php

...

sieht für den anfang schonmal gut aus. evt soltlest du aber mit === prüfen anstatt mit ==. des weiteren das pwd mit md5() verschlüsseln. wenn es denn unbedingt im code stehen muss. sprich du machst ein kleines script

<form method="post">
<input type="text" name="wort">
<input type="submit">
<?
if(isset($_POST['wort']))
{
  echo md5($_POST['wort']);
}
?>

ist jetzt stark geraft. das was dir dann ausgegeben wird speicherst du im code:
$true_pwd = "dein md5 codiertes PWD";

und wandelst das eingegebene auch per md5() um und prüfst beide mit ===
MfG