login  Naam:   Wachtwoord: 
Registreer je!
 Forum

1 uur is database

Offline dimb - 10/09/2006 09:37
Avatar van dimbNieuw lid Hallo

Ik ben bezig met een nieuwe site. Maar iets lukt me niet: Ik probeer nu om een user dmv een database 1 uur geen toegang te geven tot de site. Ik bedoel daarmee dat als een user gewoon 1 uur géén toegang heeft tot de hele site. Hoe maak je zoiets ? ( misschien met cronjob )

Paul

4 antwoorden

Gesponsorde links
Offline Button - 10/09/2006 09:48 (laatste wijziging 10/09/2006 09:48)
Avatar van Button PHP ver gevorderde als je bv. een bepaald tijdstip heeft bv. wanneer hij de laatste keer op website was, bv. een timestamp van dat tijdstip, daar tel je een uur bij en als hij probeert om je website te komen check of de huidige timestamp al voorbij die timestamp met dat extra uur is.
Offline finduilas - 10/09/2006 09:48
Avatar van finduilas PHP gevorderde Zet gwn een timestamp in de db.Controleer op de site of de timestamp+60(=> 1 uur)> nu
Indien ja; de gebruiker heeft toegang.
Indien nee;nog eventjes wachten

(ik kijk even voor een uitgewerkt voorbeeld)
Offline finduilas - 10/09/2006 09:48 (laatste wijziging 10/09/2006 09:51)
Avatar van finduilas PHP gevorderde Zet gwn een timestamp in de db.Controleer op de site of de timestamp+60(=> 1 uur)> nu
Indien ja; de gebruiker heeft toegang.
Indien nee;nog eventjes wachten

(ik kijk even voor een uitgewerkt voorbeeld).Dit is een deeltje die ik gemaakt heb voor mijn site:Let niet op de tekst,...Het is het principe die telt.
  1. <?php
  2. function gevangenis($gevangenistijd)
  3. {
  4. if ($gevangenistijd > time())
  5. {
  6. return (1);
  7. }
  8. return (0);
  9. }
  10. $username = $_SESSION['username'];
  11. $query= mysql_query("SELECT * FROM leden WHERE username='".$username."'");
  12. $arr = mysql_fetch_assoc($query);
  13. if(gevangenis($arr['gevangenistijd']))
  14. {
  15. echo 'Je zit nog in de gevangenis voor de volgende '.($arr['gevangenistijd']-time()).' seconden';
  16. }
  17. else
  18. {
  19. echo 'Je site';
  20. }
  21. ?>
Offline Rik - 10/09/2006 09:49 (laatste wijziging 10/09/2006 09:50)
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Je maakt een mysql tabel aan met daarin een veld voor het ip adres of gebruikersnaam en de tijd wanneer de ban is afelopen, in seconden vanaf de epoch.

Als je iemand 1 uur wil bannen zet je time() + 3600 in de tabel.

Als je dan wilt controleren of iemand gebanned is controleer je of de bantijd uit de tabel meer dan time() is, als dat zo is geef je een die() oid.

Edit:
Weer te laat... 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.17s