hallo zusammen, ich habe ein kleines loginscript welches name und passwort aus einer tabelle miteinander abgleicht und bei übereinstimmung eine session registriert mit der man einen adminbereich betreten kann. soweit funktionierts, ich bin aber nicht gut genug um folgendes zu lösen:
ich möchte jetzt das der name, das passwort UND die entsprechende userid in die session geschrieben werden, sodas ich sie nachher aus dieser wieder auslesen kann. die userid muss aber erst aus der tabelle ausgelesen werden und es muss überprüft werden ob die id auch zu dem user gehört (also ob der user, das passwort und die id auch zusammengehören).
ich würde mich riesig freuen wenn mir jemand helfen könnte! hier mein script:
ps: meine denkansätze waren in die richtung "SELECT user_id AS uid FROM ".$user_table." WHERE (nick like '$usernick') AND (password = '$userpass')")
Leider klappte das gar nicht, mal abgesehen davon das ich glaube das es gar nicht konform ist!![Smilie](https://www.php-resource.de/forum/core/images/smilies/smile.gif)
ich möchte jetzt das der name, das passwort UND die entsprechende userid in die session geschrieben werden, sodas ich sie nachher aus dieser wieder auslesen kann. die userid muss aber erst aus der tabelle ausgelesen werden und es muss überprüft werden ob die id auch zu dem user gehört (also ob der user, das passwort und die id auch zusammengehören).
ich würde mich riesig freuen wenn mir jemand helfen könnte! hier mein script:
ps: meine denkansätze waren in die richtung "SELECT user_id AS uid FROM ".$user_table." WHERE (nick like '$usernick') AND (password = '$userpass')")
Leider klappte das gar nicht, mal abgesehen davon das ich glaube das es gar nicht konform ist!
![Smilie](https://www.php-resource.de/forum/core/images/smilies/smile.gif)
PHP-Code:
<?php
//Eingaben werden überprüft
if($usercheck)
{
$sql = mysql_query("SELECT * FROM ".$user_table." WHERE (nick like '$usernick') AND (password = '$userpass')") or die ('mySQL ERROR (' . __LINE__ . '): '.mysql_error());
$num_rows = mysql_num_rows ($sql);
if ($num_rows > 0)
{
$datenrichtig = true;
$user_eingeloggt = true;
}
else
{
$datenrichtig = false;
$user_eingeloggt = false;
}
$_SESSION['username'] = $usernick;
session_register ("user_eingeloggt");
if ($datenrichtig)
{
$meldung = "<meta http-equiv=\"refresh\" content=\"1; url=?site=admin\">Vielen Dank für’s Einloggen. Sie werden weitergeleitet...";
}
else
{
$meldung = "<font color=\"red\"><b>ERROR:</b> Die Daten waren falsch</font>";
}
}
else
{
$meldung = "Eintragungen vornehmen und Formular absenden!";
}
?>
<form action="?site=login" method="post">
<table width="95%" align="center" cellspacing="0" cellpadding="5" border="0">
<tr>
<td>
<b>» Einloggen</b>
<br>
<br>
<input class="field" type="text" value="<?php echo("".$usernick.""); ?>" name="usernick"> Name
<br>
<input class="field" type="password" value="<?php echo("".$userpass.""); ?>" name="userpass"> Passwort
<br>
<input class="button" name="usercheck" type="submit" value="Login">
<br>
<br>
<?php echo("".$meldung.""); ?>
<div align="center"><a href="?site=register">Registrieren</a> <a href="?site=lostpassword">Passwort senden</a></div>
</td>
</tr>
</table>
</form>
Kommentar