[PHP] Simpel beveiligen wachtwoord & Sessie

Gestart doorMarvinn71 reacties159 weergaven

72 berichten · pagina 1 van 5

Marvinn

Lid · Topicstarter

Berichten
2.609
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Hey, kan iemand een heel simpele beveiliging hier in bouwen?

Wat ik zou willen:

Een inlog systeempje, met alleen wachtwoord, een sessie van 10 minuten, een uitlog knopje.

Beloning 0,10 punties
<style type="text/css"> 
body {
    font-family: Verdana;
    font-size: 11px;
}
body,td,tr {
    font-size: 11px;
    font-family: Verdana, Arial;
    margin-top:0px;
} </style>
<center><form action="twitter.php" method="post">
<br><br>Tekst in tweet: <br><textarea style="font-family:Verdana; font-size:11px;" name="tekst" cols="48" rows="10"></textarea>
<br><input type="submit" />
</form></center>


Groetjesss,
Marvin smile
AUB geen opmerking over de scripting is even snel gemaakt. Ik moet het nog aanpassen want center is oud smile
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Is toch niet zo moeilijk?

if($_POST[wachtwoord] == "ditismijnwachtwoord") {
$_SESSION[login] = true;
}

En met $_SESSION[login] kan je kijken of je in- of uitgelogd bent.

session_destroy(); vernietigt de sessie.
0
Marvinn

Lid · Topicstarter

Berichten
2.609
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Ja is dat van 10 minuten yummie?
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
ini_set(session.gc_maxlifetime, 600);

Zo wel...
0
Marvinn

Lid · Topicstarter

Berichten
2.609
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Aarclay schreef:
ini_set(session.gc_maxlifetime, 600);
Zo wel...

Werkt niet cry Wat doe ik fout?

[COLOR= #0000BB]<?php[/COLOR]  
[URL="http://www.php.net/session_start"]session_start[/URL][COLOR= #007700]();[/COLOR]
[URL="http://www.php.net/ini_set"]ini_set[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]session.gc_maxlifetime[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]600[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]"pass"[/COLOR][COLOR= #007700]] !=[/COLOR] [COLOR= #DD0000]"admin"[/COLOR][COLOR= #007700]) {[/COLOR]  
[URL="http://www.php.net/echo"]echo[/URL][COLOR= #DD0000]<div align="right">  
     <form action="" method="post">  
           <input name="pass" type="password" value="" size="9"><br>  
           <input type="submit" value="Log in">  
     </form>  
</div> [/COLOR][COLOR= #007700];[/COLOR]
    [URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]"Wachtwoord verkeerd ingevoerd!"[/COLOR][COLOR= #007700];  
}[/COLOR][URL="http://www.php.net/else"]else[/URL][COLOR= #007700]{[/COLOR]
?> test[COLOR= #0000BB]<?[/COLOR]php [COLOR= #007700]}[/COLOR] ?>
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Waar controleer je of je formulier verstuurd is?
Je staat wel leuk op: $_POST["pass"] te controleren, maar als die nog niet bestaat.... dan schiet het niet zo op smile.
0
Marvinn

Lid · Topicstarter

Berichten
2.609
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Aarclay schreef:
Waar controleer je of je formulier verstuurd is?
Hij moet refreshen yummie
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Nickjexx schreef:
Eerdere citaten tonen
Aarclay schreef:
Waar controleer je of je formulier verstuurd is?
Hij moet refreshen yummie
Zal best, maar je moet ook controleren of je formulier verstuurd is.
if($_SERVER[REQUEST_METHOD]== "POST") {
0
Marvinn

Lid · Topicstarter

Berichten
2.609
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Aarclay schreef:
Eerdere citaten tonen
Nickjexx schreef:
Eerdere citaten tonen
Aarclay schreef:
Waar controleer je of je formulier verstuurd is?
Hij moet refreshen yummie
Zal best, maar je moet ook controleren of je formulier verstuurd is.
Hoe yummie?
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Werkt Google niet meer soms?

if($_SERVER[REQUEST_METHOD]== "POST") {
0
Marvinn

Lid · Topicstarter

Berichten
2.609
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Aarclay schreef:
Werkt Google niet meer soms?
if($_SERVER[REQUEST_METHOD]== "POST") {


Nu is de code echt een rommel, maar zo werkt het niet. En ik snap er weinig van.

[COLOR= #0000BB]<?php[/COLOR]  
[URL="http://www.php.net/session_start"]session_start[/URL][COLOR= #007700]();[/COLOR]
[URL="http://www.php.net/ini_set"]ini_set[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]session.gc_maxlifetime[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]600[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]"pass"[/COLOR][COLOR= #007700]] !=[/COLOR] [COLOR= #DD0000]"admin"[/COLOR][COLOR= #007700]) {[/COLOR]  
[URL="http://www.php.net/echo"]echo[/URL][COLOR= #DD0000]<div align="right">  
     <form action="" method="post">  
           <input name="pass" type="password" value="" size="9"><br>  
           <input type="submit" value="Log in">  
     </form>  
</div> [/COLOR][COLOR= #007700];[/COLOR]
    [URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]"Wachtwoord verkeerd ingevoerd!"[/COLOR][COLOR= #007700];  
}[/COLOR][URL="http://www.php.net/else"]else[/URL][COLOR= #007700]{[/COLOR] [URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_SERVER[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]REQUEST_METHOD[/COLOR][COLOR= #007700]]==[/COLOR] [COLOR= #DD0000]"POST"[/COLOR][COLOR= #007700]) {[/COLOR]
?>test[COLOR= #0000BB]<?[/COLOR]php [COLOR= #007700]} }[/COLOR] ?>
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Misschien is een PHP-tut wel een beter idee?
http://www.phptuts.nl

Want wat je nu hebt klopt nergens naar. Het is een kwestie van logisch kijken, en niet gaan code-gokken.
In jouw voorbeeld: je controleert op: $_POST["pass"], maar die bestaat niet, want je formulier is nog nooit verstuurd, en controleer je of je formulier gestuurd is als je wachtwoord goed is. Geen goede logica!

Ik kan wel een pseudo-code geven, waar je mee verder kan.

[COLOR= #0000BB]<?php[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_SERVER[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]REQUEST_METHOD[/COLOR][COLOR= #007700]]==[/COLOR] [COLOR= #DD0000]"POST"[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #FF8000]// er is een formulier verstuurd[/COLOR]
   
  [URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]"pass"[/COLOR][COLOR= #007700]] !=[/COLOR] [COLOR= #DD0000]"admin"[/COLOR][COLOR= #007700]) {[/COLOR]  
  [COLOR= #FF8000]// password is niet gelijk. [/COLOR]
   [COLOR= #007700]}[/COLOR]  [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
  [COLOR= #FF8000]// password is wel gelijk. Plaats sessie.... [/COLOR]
   [COLOR= #007700]}

}[/COLOR] [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
 [COLOR= #FF8000]// niks verstuurd, toon formulier.[/COLOR]
[COLOR= #007700]}[/COLOR]
?>
0
Marvinn

Lid · Topicstarter

Berichten
2.609
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Aarclay schreef:
Misschien is een PHP-tut wel een beter idee?
http://www.phptuts.nl

Want wat je nu hebt klopt nergens naar. Het is een kwestie van logisch kijken, en niet gaan code-gokken.
In jouw voorbeeld: je controleert op: $_POST["pass"], maar die bestaat niet, want je formulier is nog nooit verstuurd, en controleer je of je formulier gestuurd is als je wachtwoord goed is. Geen goede logica!
Ik kan wel een pseudo-code geven, waar je mee verder kan.

[COLOR= #0000BB]<?php[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_SERVER[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]REQUEST_METHOD[/COLOR][COLOR= #007700]]==[/COLOR] [COLOR= #DD0000]"POST"[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #FF8000]// er is een formulier verstuurd[/COLOR]
   
  [URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]"pass"[/COLOR][COLOR= #007700]] !=[/COLOR] [COLOR= #DD0000]"admin"[/COLOR][COLOR= #007700]) {[/COLOR]  
  [COLOR= #FF8000]// password is niet gelijk. [/COLOR]
   [COLOR= #007700]}[/COLOR]  [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
  [COLOR= #FF8000]// password is wel gelijk. Plaats sessie.... [/COLOR]
   [COLOR= #007700]}

}[/COLOR] [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
 [COLOR= #FF8000]// niks verstuurd, toon formulier.[/COLOR]
[COLOR= #007700]}[/COLOR]
?>


ini_set(session.gc_maxlifetime, 600); waar moet dat nou, ik snap er geen ene ... van? yummie
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
bovenaan in je PHP-blok, zou ik doen....
0
Marvinn

Lid · Topicstarter

Berichten
2.609
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Aarclay schreef:
bovenaan in je PHP-blok, zou ik doen....
Aggh werkt nog niet...

[COLOR= #0000BB]<?php[/COLOR]
[URL="http://www.php.net/ini_set"]ini_set[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]session.gc_maxlifetime[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]600[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_SERVER[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]REQUEST_METHOD[/COLOR][COLOR= #007700]]==[/COLOR] [COLOR= #DD0000]"POST"[/COLOR][COLOR= #007700]) {[/COLOR]

   
  [URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]"pass"[/COLOR][COLOR= #007700]] !=[/COLOR] [COLOR= #DD0000]"admin"[/COLOR][COLOR= #007700]) {[/COLOR]  
  [URL="http://www.php.net/echo"]echo[/URL][COLOR= #DD0000]"FOUT!"[/COLOR][COLOR= #007700];
   }[/COLOR]  [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
  [URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]ADMIN TOOL [/COLOR][COLOR= #007700];
   }

}[/COLOR] [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
[URL="http://www.php.net/echo"]echo[/URL][COLOR= #DD0000]<div align="right">  
     <form action="" method="post">  
           <input name="pass" type="password" value="" size="9"><br>  
           <input type="submit" value="Log in">  
     </form>  
</div> [/COLOR][COLOR= #007700];
}[/COLOR]
?>
0

Jouw reactie

Deel je idee, stel een vraag of help een ander verder.

Editor laden…

Praat mee met de One2xs-community.

Inloggen om te reageren