M
Ich bin mir nicht sicher, ob PHP <> für ein != anerkennt. Probier ich aber jetzt auch nicht aus.
Und dann würde ich auch nicht if(!row) abfragen.
<?
session_start();
if(session_is_registered('user'))
{
echo("Sie sind eingeloggt als " . $_SESSION["user"] . " !");
}
else if(isset($psw) && isset($user))
{
include("inc/db.inc.php");
$result = mysql_query("SELECT passwort, level, name FROM user WHERE name = '$user'");
$row = mysql_fetch_array($result,MYSQL_ASSOC);
if ( mysql_num_rows($result)==0 )
{
die("Dieser Name ist leider nicht bekannt !");
}
if ( $row["passwort"] != $psw )
{
die("Dieses Passwort passt nicht zum Usernamen !");
}
$_SESSIOM["user"] = $row["name"];
$_SESSION["psw"] = $row["passwort"];
$_SESSION["level"] = $row["level"];
header("Location: login.php");
}
else
{
echo "Login";
}
?>
Und noch ein Vorschlag. Mach Dir mal ne weitere PHP-Seite:
check.php
<?php
session_start();
print_r( $_SESSION );
?>
Die rufst Du dann mal auf, nachdem die Session Userdaten enthalten soll.
Dann kannst Du mal checken, was überhaupt in Deiner Session steht.
Was für eine PHP-Version fährst Du eigentlich???
Und nochwas, vielleicht hilft Dir das hier bei Deinen Session-Probs weiter: http://www.tool-garage.de/de/snip_ses.php
Gruß,
mid