Kermit
Enthusiast
Hi Leute
Ich versuch mich gerade an Session Funktionen und soweit klappt das ganze auch. Das einzige Prob is, dass es irgendwie nur über die URL funzt, also nich über Cookies. Wenn man sich auf meiner Seite einloggt und dann auf zurück klickt (im Browser) dann is die Session ID halt nich dabei aber das Script erkennt, dass eine Session besteht und zeigt dann, so wie es soll, "Hallo," an. Würde jetzt in der URL noch die Session ID stehen, dann würde da z.B. "Hallo, Kermit" stehen. Wieso liest das Script das nicht einfach aus dem Cookie aus, so wie es z.B. hier im Forum auch gemacht wird (wird es doch, oder? )?
Hier mal der Code:
index.php:
login.php:
logout.php:
Hier noch die Site. Könnter das evtl. besser nachvollziehen, was ich meine (Nick: dada, Pass: 1234) Klick
Thx
Alex
Ich versuch mich gerade an Session Funktionen und soweit klappt das ganze auch. Das einzige Prob is, dass es irgendwie nur über die URL funzt, also nich über Cookies. Wenn man sich auf meiner Seite einloggt und dann auf zurück klickt (im Browser) dann is die Session ID halt nich dabei aber das Script erkennt, dass eine Session besteht und zeigt dann, so wie es soll, "Hallo," an. Würde jetzt in der URL noch die Session ID stehen, dann würde da z.B. "Hallo, Kermit" stehen. Wieso liest das Script das nicht einfach aus dem Cookie aus, so wie es z.B. hier im Forum auch gemacht wird (wird es doch, oder? )?
Hier mal der Code:
index.php:
PHP:
<?php
@session_start();
if(!session_is_registered('nick')){
$session_da = 0;
}
else{
$session_da = 1;
$nick = $HTTP_SESSION_VARS['nick'];
}
echo "<table width = '900' border = '0' cellpadding = '0' cellspacing = '0'>";
// LOGIN FORMULAR |A|
echo "<tr height = '50'><td width = '100%' colspan = '3' background = 'login_bg.gif' valign = 'bottom'>";
if($session_da = 0){
echo "<form action = 'login.php' method = 'post'>";
echo "<font id = 'schrift1'> Nick: <input class = 'text1' name = 'nick' type = 'text' size = '16' maxlength = '40'> ";
echo "Passwort: <input class = 'text1' name = 'pass' type = 'password' size = '16' maxlength = '40'> ";
echo "<input class = 'button' name = 'go' type = 'submit' value = 'login'> ";
echo "<a href = 'forgot_pass.php'>Passwort vergessen?</a> || <a href = 'register.php'>Registrieren</a></form></font>";
}
if($session_da = 1){
echo "<form action = 'logout.php' method = 'post'>";
echo "<font class = 'text1'>Hallo, $nick</font>";
echo "<input class = 'button' name = 'go' type = 'submit' value = 'logout'></form>";
}
// LOGIN FORMULAR |E|
echo "</td></tr><tr height = '100'><td width = '900' colspan = '3' background = 'logo_bg.gif'> ";
echo "</td></tr>";
echo "<tr><td width = '100' background = 'pixel.gif' valign = 'top'><iframe frameborder = '0' src = 'neuste_pics.php' width = '100' height = '600' name = 'neuste_pics'>";
echo "<p>Ihr Browser kann leider keine eingebetteten Frames anzeigen!</p></iframe></td>";
echo "<td width = '680' background = 'pixel.gif'><iframe frameborder = '0' src = 'news.php' width = '680' height = '1000' name = 'neuste_pics'>";
echo "<p>Ihr Browser kann leider keine eingebetteten Frames anzeigen!</p></iframe></td>";
echo "<td width = '120' background = 'pixel.gif'>Werbebanner</td></tr>";
?>
login.php:
PHP:
<?php
@session_start();
$db = mysql_connect("localhost", "xxxxxxxx", "xxxxxxxx");
$res = mysql_db_query("xxxxxxx", "SELECT nick, pass FROM user_db WHERE nick = '$nick'");
$num = mysql_num_rows($res);
if($num == 0){
echo "Nick nicht vorhanden!";
}
else{
$nick_db = mysql_result($res, 0, "nick");
$pass_db = mysql_result($res, 0, "pass");
if($nick_db == $nick && $pass_db == $pass){
echo "Hallo, $nick";
session_register("nick");
session_register("pass");
}
else{
echo "Falsches Passwort!";
}
}
mysql_close($db);
echo "<a href = 'index.php'>Zurück</a>";
?>
logout.php:
PHP:
<?php
@session_start();
session_destroy();
if(!session_is_registered('$nick')){
echo "Juhu hat gefunzt";
}
else{
echo "Scheiße fehlgeschlagen!";
}
?>
Hier noch die Site. Könnter das evtl. besser nachvollziehen, was ich meine (Nick: dada, Pass: 1234) Klick
Thx
Alex