Hoe laat je zien hoeveel leden online zijn?
Maak eens nog een account aan en kijk wat er dan gebeurd.
Die for lus heb ik nog nooit op die manier gezien, werkt dat?
<?php
for ($x=0; $row = mysql_fetch_array($res); $x++) {
if ($x!=0) { echo', '; }
echo $row['user'];
}
?>
ken je:

$time = time();

niet beter now() doen in je sql query?

dan ken je ook gemakkelijker tijden aftrekken

GR. mebus!
en van het time veld zou je beter een TIMESTAMP kunnen maken in je database en dan:

<?php
$time = time();
$sql = "UPDATE users SET time = '".$time."' WHERE user = '".$_POST['user']."'";
?>
vervangen door
<?php
$sql = "UPDATE users SET time = NOW() WHERE user = '".$_POST['user']."'";
?>

en dit:

<?php
$time = time();
$tijdminvijf = $time - 300;
$sql = "SELECT user FROM users WHERE `time` > ".$tijdminvijf."";
?>

vervangen door:

<?php
$sql = "SELECT user FROM users WHERE time < DATE_SUB(NOW(), INTERVAL 5 MINUTE)";
?>
Undefined index: ingelogd in /home/borisbez/domains/xxx.nl/public_html/login/registreer.php on line 20
@kalle: Heb ik gedaan. Nieuwe user: sjoepie pass: sjaak
Sjoepie komt er wel bij te staan *-). Heel erg raar, maar goed, ik zal Boris gewoon verwijderen ennooit meer gebruiken:-) het werkt nu

@Arjan Schuurman: Die had ik nog niet gezien:-) Bedankt voor de tip en 't is verholpen:-)


Bedankt allemaal:-)
SELECT COUNT(DISTINCT(ip)) as aantal FROM bezoekers WHERE datum < DATE_SUB(NOW(), INTERVAL 5 MINUTE)

wil niet werken, nu krijg ik gewoon '111' eruit rollen, en dat is het aantal unieke bezoekers dat ik heb.

zie : http://www.xxx.nl/

Hoe kan ik dit oplossen?
Ik heb nu dit:

SELECT COUNT(DISTINCT(ip)) as aantal FROM bezoekers WHERE DATE_SUB(CURDATE(),INTERVAL 5 MINUTE) <= datum;

Maar, dit schijnt niet echt te werken, want een half uur geleden was het 5. Een kwartier geleden 6 en nu 7.


Er moet een manier zijn .

En SELECT COUNT(DISTINCT(ip)) as aantal FROM bezoekers WHERE DATE_SUB(CURDATE(),INTERVAL 5 MINUTE) <= datum; schijnt dus niet echt te werken. Wie weet het?
WHERE DATE_SUB(NOW(),INTERVAL 5 MINUTE) <= last_online

Staat daar, en ik had

WHERE DATE_SUB(CURDATE(),INTERVAL 5 MINUTE) <= last_online


Flauw, dat werkt wel :@ Maarja, in ieder geval blij dat het werkt :-)

Reageren