ik heb een vraag
hoe kan ik met sql via php opvragen hoeveel er van iets is gebeurt de laatste 24 uur
bijv: hoeveel aanmeldingen heb ik op mijn site gehad?
kan iemand mij helpen
alvast bedank
Registeer bij elke bezoek de datum. En kijk met sql welke data van minder dan 24 geleden zijn.
<?php

$timestamp = time()-(24*60*60); // timestamp van 24 uur geleden
$date = date("Y-m-d H:i:s",$timestamp); // omzetten naar MySQL TIMESTAMP-format

$query = "
SELECT *
FROM tabel
WHERE date > $date // waarbij DATE een kolom is met TIMESTAMP als format, en CURRENT_TIMESTAMP als DEFAULT waarde
";

?>
Laat dit alsjeblieft gewoon aan MySQL over en gebruik een DATETIME als datatype voor je tijdstip. Je kunt met 1 enkele mysql query dan heel eenvoudig alle records ophalen waarvan het tijdstip in de laatste 24 uur ligt:

SELECT *
FROM tabel
WHERE datumtijdveld > DATE_SUB(NOW(), INTERVAL 1 DAY)

En om het aantal events te tellen dat in de laatste 24 uur plaatsvond:

SELECT COUNT(*) AS aantal
FROM tabel
WHERE datumtijdveld > DATE_SUB(NOW(), INTERVAL 1 DAY)
Peter Somhorst schreef op 19.04.2007 12:30
<?php

$timestamp = time()-(24*60*60); // timestamp van 24 uur geleden
$date = date("Y-m-d H:i:s",$timestamp); // omzetten naar MySQL TIMESTAMP-format

$query = "
SELECT *
FROM tabel
WHERE date > $date // waarbij DATE een kolom is met TIMESTAMP als format, en CURRENT_TIMESTAMP als DEFAULT waarde
";

?>


Waarom moet dit met php gebeuren? En waarom TIMESTAMP? DATETIME is veel beter...

[edit]Te laat... Blanche das precies wat we willen hebben!(:[/edit]

Reageren