Tijden laten zien en mee rekenen
Roel
12/07/2007 17:11:00Hallo,
Voor een ban systeem gebruik ik dit:
Als de ban ingaat word tijd op NOW() gezet, de ban duurt dus altijd 10 minuten. Nu wil ik kunnen weergeven hoelang je nog gebanned bent. Hoe doe ik dit? Ik snap namelijk nog steeds niet helemaal hoe je met tijden "rekent".
Voor een ban systeem gebruik ik dit:
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?php
$persoon = mysql_query("SELECT * FROM users WHERE DATE_SUB(NOW(), INTERVAL 10 MINUTE) >= tijd AND login='".$login."'");
$bestaat = mysql_num_rows($persoon);
if($bestaat >= 1)
{
mysql_query("UPDATE users SET ban=0 WHERE login='".$login."'");
}
?>
$persoon = mysql_query("SELECT * FROM users WHERE DATE_SUB(NOW(), INTERVAL 10 MINUTE) >= tijd AND login='".$login."'");
$bestaat = mysql_num_rows($persoon);
if($bestaat >= 1)
{
mysql_query("UPDATE users SET ban=0 WHERE login='".$login."'");
}
?>
Als de ban ingaat word tijd op NOW() gezet, de ban duurt dus altijd 10 minuten. Nu wil ik kunnen weergeven hoelang je nog gebanned bent. Hoe doe ik dit? Ik snap namelijk nog steeds niet helemaal hoe je met tijden "rekent".
PHP hulp
22/12/2024 12:54:24Joren de Wit
12/07/2007 17:58:00Je kunt beter in je database de tijd opslaan waarop de ban afloopt, anders moet je in al je queries namelijk de periode dat een ban duurt op gaan nemen.
De query die je in de huidige situatie kunt gebruiken:
Als je de eindtijd van de ban opslaat wordt de query iets eenvoudiger:
Kijk anders ook eens in mijn pas nieuwe tutorial over datum- en tijdfunctie in MySQL voor meer voorbeelden.
De query die je in de huidige situatie kunt gebruiken:
Als je de eindtijd van de ban opslaat wordt de query iets eenvoudiger:
Kijk anders ook eens in mijn pas nieuwe tutorial over datum- en tijdfunctie in MySQL voor meer voorbeelden.