Ik ben pas een half jaartje bezig met PHP en heb nu enige ervaring opgedaan. Maar ik had een vraag betreffende een inlogsysteem wat ik aan het opzetten ben. Ik wil graag een functie erin toevoegen dat als je na 3 inlogpogingen niet de juiste combinatie van username en password hebt weten in te voeren dat dan je account voor 30 minuten geblokkeerd wordt.
Alleen ik heb echt geen idee hoe ik zo'n functie op moet bouwen. Heeft iemand hier ervaring mee of weet iemand een tutorial want via google kan ik niks vinden qua tuts of scripts waar het in voorkomt.
NB, ik draai nog op een oudere versie van php, namelijk 4.4.4.
ja dat kan ook inderdaad, maar dat lost het probleem niet echt op ;)
Btw, tabellen zijn idd nooit mooi voor opmaak, maar toch is het voor dit probeersel even handig :)!
Twee of meer keer achter elkaar in een topic posten heet bumpen. Bumpen is pas na 24 uur toegestaan en kan een reden zijn voor de admins en moderators om een topic te sluiten. Gebruik indien nodig de knop om je tekst aan te passen.
En hoe roep ik zoiets aan in PHP, ik dacht eigenlijk dat het zo moest:
[code]
<?php
if (mysql_num_rows($result) > 0){
//username gevonden, registreer in sessie
$username = mysql_real_escape_string($_POST["username"]);
$password = mysql_real_escape_string($_POST["password"]);
Ik zou nooit iemand voor dertig minuten blokken na drie mislukte inlogpogingen. Een ip zegt heel weinig. Ik werk bijvoorbeeld in een bedrijf met 80 werknemers en die hebben allemaal hetzelfde externe ip.
wil je toch perse zoiets gebruik dan niet een hidden input om aan te geven hoe vaak iemand het heeft geprobeerd maar gebruik voor zulke informatie een SESSION['variabele'] een hidden input is namelijk prima te beschrijven
Begrijpelijk, maar dit gaat om een systeem waar dit inlogscript voor zit en het gaat alleen maar om kleine bedrijfjes die er gebruik van gaan maken.
Ik had trouwens gekeken hoe ik het het beste aan kon pakken (dacht ik..)
Ik denk dat ik als eerste een if statement moet maken als er op submit gedrukt wordt met daarin de check of het ip voorkomt in de tabel suspended. Als dit niet het geval is volgt gewoon de rest van het script.
Als het wel het geval is wordt er gekeken naar hoe hoog de count staat, is dit bijvoorbeeld 1, dan komt er te staan: 'u heeft nog 2 pogingen over' o.i.d.
Als de count 3 is, dan is de mededeling, u kunt niet inloggen voor ... minuten.
Is dit allemaal niet het geval volgt gewoon de rest van de afhandeling van het script.
Dan moet er nog een functie komen voor als vervolgens het verkeerde wachtwoord wordt ingevoerd (helemaal aan het einde van het script in de laatste else statement dus) hierin wordt dan eerst gekeken of het IP voorkomt, als het voorkomt wordt de count en tijd geupdate (count +1 en tijd = huidige tijd), zo blijven de pogingen ook staan net als bij geld pinnen of bij je telefoon.