Verfasst: 20.11.2002 21:21
Der Tipp hat leider nicht geholfen, aber ich habe nun eine Lösung. Ich habe den Fehler nicht beseitigt, das Problem aber umgangen. Indem ich einfach die Gäste getrennt auslese. Es ist nämlich so dass die SQL Abfrage nur registrierte User zurück liefert. Demnach kann er auch nur registrerite User auswerten.
Ich habe einfach eine neue SQl Abfrage angehängt, die nur Gäste einliesst und auswertet. Und das machst Du wie folgt (für Korrekturen bin ich dankbar)
(OHNE GEWÄHR! Bei mir geht es)
SUCHE NACH :
Dahinter einbringen :
Sag mal bescheid ob es damit bei Dir auch geht.
Ich habe einfach eine neue SQl Abfrage angehängt, die nur Gäste einliesst und auswertet. Und das machst Du wie folgt (für Korrekturen bin ich dankbar)
(OHNE GEWÄHR! Bei mir geht es)
SUCHE NACH :
Code: Alles auswählen
// Skip multiple sessions for one user
if ( $row['session_ip'] != $prev_session_ip )
{
$guests_online++;
}
}
$prev_session_ip = $row['session_ip'];
}
Dahinter einbringen :
Code: Alles auswählen
// -------------- wertet die Gaeste einzeln aus.
if ($guests_online < 1)
{
$g_sql = "SELECT session_logged_in, session_ip, session_user_id
FROM ".SESSIONS_TABLE." WHERE session_user_id = '-1'
AND session_time >= ".( time() - 300 ) . "
ORDER BY session_ip ASC";
if( !($g_result = $db->sql_query($g_sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain user/online information', '', __LINE__, __FILE__, $g_sql);
}
while( $g_row = $db->sql_fetchrow($g_result) )
{
if ( $g_row['session_ip'] != $g_prev_session_ip )
{
$guests_online++;
}
$g_prev_session_ip = $g_row['session_ip'];
}
}