21. maj 2004 - 12:32Der er
16 kommentarer og 1 løsning
vise antal online i chat
Hej
Jeg vil gerne på min forside vise hvor mange der er online i chatten. Kan man overhovedet gøre det med den chat jeg anvender? Hvis ikke hvordan gør jeg sådan at det bliver muligt?
ja, brugere skal vel timeout hvis de ikke har skrevet i X antal mins, eller noget i den retning.... OLEBOLE har lavet en god chat som ligger gratis på netttet et eller andet sted.... hvis du søger her på exp.dk kan du sikkert finde den....
<?php $sql = " SELECT count(distinct u.user) FROM chat_user u, chat_message m WHERE u.user = m.user AND sub_date(now(), INTERVAL 15 MIN) < FROM_UNIXTIME(m.stamp)";
$result = mysql_query($sql) or die( mysql_error() );
if ( $row = mysql_fetch_row($result) ) { echo "Online i chatten lige nu:{$row[0]}<br />"; } ?>
Men den melder følgende fejl:
You have an error in your SQL syntax near '(now(), INTERVAL 15 MIN) < FROM_UNIXTIME(m.stamp)' at line 5
<?php $sql = " SELECT count(distinct u.user) FROM chat_user u, chat_message m WHERE u.user = m.user AND sub_date(now(), INTERVAL 15 MINUTE) < FROM_UNIXTIME(m.stamp)";
$result = mysql_query($sql) or die( mysql_error() );
if ( $row = mysql_fetch_row($result) ) { echo "Online i chatten lige nu:{$row[0]}<br />"; } ?>
Jeg må vist til at tage mig sammen.. Her: <?php require("../lib/db.php"); mysql_select_db("dennis_test"); $sql = " SELECT count(distinct u.user) FROM chat_users u, chat_messages m WHERE u.user = m.user AND subdate(now(), INTERVAL 15 MINUTE) < FROM_UNIXTIME(m.stamp)";
$result = mysql_query($sql) or die( mysql_error() );
if ( $row = mysql_fetch_row($result) ) { echo "Online i chatten lige nu:{$row[0]}<br />"; } ?>
Koden virker (syntaksmæssigt).. Men det er stadig under antagelse at stamp er en værdi du har fået fra now() når du opretter beskeden i databasen.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.