meilon
Erfahrenes Mitglied
Hi,
Sorry das ich euch jetzt auch mal wegen Sessions nerven muss.
Ich habe eine Page gebaut, die bisher nur auf Sessions aufbaut - und das erfolgreich. Nur jetzt möchte ich auch feste Cookies auf dem Client speichern, damit er automatisch eingeloggt wird. Und daran haperts.
Ich habe hier auch schon anregungen gefunden, konnte ich aber bei mir nicht zum laufen bekommen.
Hier mal meine login.php
Noch dazu zu sagen wäre, dass ich mit Smarty arbeite und nun der HTML-Code erst am Ende generiert und ausgegeben wird.
Habt ihr einen Lösungsvorschlag?
mfg
Sorry das ich euch jetzt auch mal wegen Sessions nerven muss.
Ich habe eine Page gebaut, die bisher nur auf Sessions aufbaut - und das erfolgreich. Nur jetzt möchte ich auch feste Cookies auf dem Client speichern, damit er automatisch eingeloggt wird. Und daran haperts.
Ich habe hier auch schon anregungen gefunden, konnte ich aber bei mir nicht zum laufen bekommen.
Hier mal meine login.php
PHP:
<?
$login= '
<form action="index.php" method="post">
<table border="0" width="94%"><tr>
<td><font color="#FFFFFF">Name:</font></td>
<td align="right"><input type="text" name="name" size="12"></td></tr>
<tr><td><font color="#FFFFFF">Kennwort:</font></td>
<td align="right"><input type="password" name="pwd" size="12"></td></tr>
<tr><td>Cookie?</td>
<td align="right"><input type="checkbox" name="cookie" value=true checked></td></tr>
<tr><td colspan="2" align="right"><input type="submit" value="Login"></td></tr>
<tr><td colspan="2" align="center"><br><br><a href="index.php?section=register">Register</a> - <a href="index.php?section=member&sendpass=1">Passwort vergessen</a></td></tr>
</table>
</form>';
if (isset($_POST['name'])) {
$sql = 'SELECT `ID` , `Nick` , `Realname` , `Rang` '
. ' FROM `users` '
. ' WHERE 1 AND `Nick` = \''.$_POST["name"].'\' AND `Passwort` = \''.md5 ($_POST["pwd"]).'\' LIMIT 0, 30';
$result = mysql_query ($sql);
if (mysql_num_rows($result) > 0)
{
$data = mysql_fetch_array ($result);
$_SESSION['user_id'] = $data['ID'];
$_SESSION['user_nickname'] = $data['Nick'];
$_SESSION['user_nachname'] = $data['Realname'];
$_SESSION['user_rang'] = $data['Rang'];
}
else
{
$login="<h1>Fehler</h1>Die Zugangsdaten sind falsch!<br><br><a href='index.php'>Zurück</a>";
}
}
if (isset($_POST['logout'])) {
session_unset();
session_destroy();
}
if (isset($_SESSION['user_id'])) {
$login='Willkommen '.$_SESSION['user_nickname'].'!<br>';
$login=$login.'<br>[<a href="index.php?section=member&function=edit">Profil ändern</a>]</br>';
if (round($_SESSION['user_rang']) > 50) {
$login.='- [<a href="index.php?section=news&function=center">News Center</a>]<br>';
$login.='- [<a href="index.php?section=downloads&function=center">Downloads Center</a>]';
}
$login=$login.'<br><br><form action="index.php" method="post"><input type="Submit" value="Ausloggen"><input type="hidden" name="logout" value="true"></form>';
}
$smarty->assign('community', $login);
?>
Habt ihr einen Lösungsvorschlag?
mfg