Kannst du diesen Käse nicht mal ordentlich einrücken? Mensch, sowas ist echt eine Zumutung!!!
Außerdem sehe ich nirgendwo, dass eine Ausgabe bei falschen Daten gemacht wird.
PHP-Code:
<? ### login.php ###
if(!isset($_SESSION['name']))
{
if(!isset($_POST['name']) && !isset($_POST['pw']))
{
echo '<div align="center">';
echo ' <table border="1" width="373" height="166">';
echo ' <tr>';
echo ' <td width="373" height="19">[b]Login -[/b]</td>';
echo ' </tr>';
echo ' <tr>';
echo ' <td width="373" height="135">';
echo ' <form method="POST" action="login.php">';
echo '
[i]Name: <input type="text" name="name" size="20">[/i]</p>';
echo '
[i]Code:[/i] <input type="text" name="pw" size="20"></p>';
echo '
<input type="submit" value="Einloggen" name="B1"></p>';
echo ' </form>';
echo ' </td>';
echo ' </tr>';
echo ' </table>';
echo '</div>';
}
else ## dieses ##
{
mysql_connect('localhost', 'xmaler', 'h3h3') or die ('Keine Verbindung moeglich');
mysql_select_db('xmaler') or die ('Die Datenbank existiert nicht');
//checken ob daten stimmen
$_POST['name'] = "$name";
$abfrage = "SELECT * FROM user WHERE name LIKE '$name'";
$ergebnis = mysql_query($abfrage);
$row = mysql_fetch_object($ergebnis);
if($_POST['name'] == "$row->name" && $_POST['pw'] == "$row->pw")
{
$user = $_SESSION['user'];
$pw = $_SESSION['pw'];
print "nun sind sie eingeloggt, viel spass $name.
eine Session wurde erstellt
die Seite wurde nun ihren Rechten angepasst";
}
}
if(isset($_POST['name']) && !isset($_POST['pw']))
{
echo "Ihr Name und das PW stimmen nicht überein. Bitte überprüfen sie Ihre Eingabe.
unter Umständen ist auch nur die Session beendet wurden.";
die;
}
}
else
{
echo 'sie sind schon als ', $_SESSION['name'], ' eingeloggt';
}
?>
Außerdem ist die Zeile
PHP-Code:
if(isset($_POST['name']) && !isset($_POST['pw']))
total sinnbefreit. Wenn $_POST['name'] gesetzt ist, dann ist das auch $_POST['pw']
Gruß
phpfan