PHP [MySql] Nach gelöschter Session ID wird nichts mehr ausgegeben

n006

Cadet 3rd Year
Registriert
Feb. 2009
Beiträge
63
Hallo,

ich habe ein Problem, das mich schon seit zwei Tagen beschäftigt.
Ich habe ein kleines Loginscript zusammengestellt, welches nach dem Login die Session ID in einer MySql Db abspeichert, zum Logout wird lediglich die Session ID auf NULL gesetzt. Das hat zur Folge das ein Login wunderbar funktioniert, jedoch nach ausführen der logout() Funktion der nachstehende code nicht ausgeführt wird.

Hier die functions.php
PHP:
/**
 * @param int $userid
 * @return void
 */
function login ( $userid ) {
    $sql = 'UPDATE users SET UserSession = \'' . session_id() . '\' WHERE UserId = ' . ((int)$userid);
    if ( !mysql_query($sql) ) {
        exit(mysql_error());
    }
}

/**
 * @return boolean
 */
function logged_in () {
    $sql = 'SELECT UserId FROM users WHERE UserSession = \'' . session_id() . '\'';
    if ( !$result = mysql_query($sql) ) {
        exit(mysql_error());
    }
    return (mysql_num_rows($result) == 1);
}

/**
 * @return void
 */
function logout () {
    $sql = 'UPDATE users SET UserSession = NULL WHERE UserSession = \'' . session_id() . '\'';
    if ( mysql_query($sql) ) {
        exit(mysql_error());
    }
/**
 * Ab hier wird nichts mehr ausgeführt
 */
  echo "Test";
}

Wieso wird
PHP:
echo "Test";
nicht ausgeführt?
Ich bin für jeden Hinweis dankbar. Vielen Dank im Voraus!

Grüße,
n006
 
Zuletzt bearbeitet:
Die Verneinung der If-Bedingung fehlt in der Logout-Funktion.
 
...oh Mann! Bäume und Wald und so...

Vielen Dank! Super!
 
Zurück
Oben