HTML interesse |
|
Hallo,
Ik log nu in op mijn eigen script.
Als ik inlog word er ook een cookie gemaakt.
Maar hoe kan ik die verder gebruiken?
Dus dat die op index ook zegt van welkom terug Marly.????
Hier mijn inlog script:
<?php
//login.php
include("config.php");
if(isset($_POST['login'])){//is er op login gedrukt
if(empty($_POST['gebruikersnaam'])){//empty is als er niks is megegeven dus als je het veld van gebruikersnaam leeg hebt gelaten
die('Er is geen gebruikersnaam ingevult');//die is een functie die stopt het script onmiddelijk en geeft die text weer
}
if(empty($_POST['wachtwoord'])){
die('Er is geen wachtwoord ingevult');//kijk hierboven voor uitleg
}
// nu weten we zeker dat er een gebruikersnaam en wachtwoord is meegeven dus nu controleren of ze ook bij elkaar horen
$sql = mysql_query("SELECT * FROM leden WHERE gebruikersnaam = '".$_POST['gebruikersnaam']."'");//haal de gebruikersnaam uit de database
$num = mysql_num_rows($sql);//dit kijkt of de gebruikersnaam bestaat een 0 betekent dat ie niet bestaat en een 1 wel
if(empty($num)){//hier controleert ie of het een 0 of 1 is de funtie empty heeft 2 mogelijkheden of het is een 0 of het is hellemaal leeg
die('Deze gebruikersnaam bestaat niet');
}
//nu weten we ook dat de gebruikersnaam bestaat nu nog controleren of het wachtwoor bij de gb hoort maar we moeten het eerst omzetten naar md5 omdat het ook zo in de database staat
$wachtwoord = md5($_POST['wachtwoord']);//omzetten naar een md5 string
$obj = mysql_fetch_object($sql);//hier halen de gegevens op uit de eerder gemaakt conectie
if($obj->wachtwoord != $wachtwoord){//!= betekend niet gelijk aan
die('Het wachtwoord komt niet overeen met de gebruikersnaam');
}
//zo we hebben nu alles gecontroleerd dus nu maar de cookies registreren.
setcookie("id", $obj->id,time()+(60*60*24*365), "/", "");//cookie voor 1 jaar
setcookie("wachtwoord", $wachtwoord,time()+(60*60*24*365), "/", "");//cookie voor 1 jaar
echo "U bend succelvol ingelogd als ".$obj->gebruikersnaam;
}
else{//er is nog niet op login gedrukt
// we gaan eve makkelijk doen en doen het in gewoon html en niet tussen de echo ;)
?>
<table>
<form method="post" action="">
<tr>
<td>Gebruikersnaam:</td>
<td><input name="gebruikersnaam" type="text"></td>
</tr>
<tr>
<td>Wachtwoord:</td>
<td><input name="wachtwoord" type="password"></td>
</tr>
<tr>
<td colspan="2" align="center"><input name="login" value="Login" type="submit"></td>
</tr>
</form>
</table>
<?
}
?>
<?php //login.php include("config.php"); if(isset($_POST['login'])){//is er op login gedrukt if(empty($_POST['gebruikersnaam'])){//empty is als er niks is megegeven dus als je het veld van gebruikersnaam leeg hebt gelaten die('Er is geen gebruikersnaam ingevult');//die is een functie die stopt het script onmiddelijk en geeft die text weer } if(empty($_POST['wachtwoord'])){ die('Er is geen wachtwoord ingevult');//kijk hierboven voor uitleg } // nu weten we zeker dat er een gebruikersnaam en wachtwoord is meegeven dus nu controleren of ze ook bij elkaar horen $sql = mysql_query("SELECT * FROM leden WHERE gebruikersnaam = '".$_POST['gebruikersnaam']."'");//haal de gebruikersnaam uit de database $num = mysql_num_rows($sql);//dit kijkt of de gebruikersnaam bestaat een 0 betekent dat ie niet bestaat en een 1 wel if(empty($num)){//hier controleert ie of het een 0 of 1 is de funtie empty heeft 2 mogelijkheden of het is een 0 of het is hellemaal leeg die('Deze gebruikersnaam bestaat niet'); } //nu weten we ook dat de gebruikersnaam bestaat nu nog controleren of het wachtwoor bij de gb hoort maar we moeten het eerst omzetten naar md5 omdat het ook zo in de database staat $wachtwoord = md5($_POST['wachtwoord']);//omzetten naar een md5 string $obj = mysql_fetch_object($sql);//hier halen de gegevens op uit de eerder gemaakt conectie if($obj->wachtwoord != $wachtwoord){//!= betekend niet gelijk aan die('Het wachtwoord komt niet overeen met de gebruikersnaam'); } //zo we hebben nu alles gecontroleerd dus nu maar de cookies registreren. setcookie("id", $obj->id,time()+(60*60*24*365), "/", "");//cookie voor 1 jaar setcookie("wachtwoord", $wachtwoord,time()+(60*60*24*365), "/", "");//cookie voor 1 jaar echo "U bend succelvol ingelogd als ".$obj->gebruikersnaam; } else{//er is nog niet op login gedrukt // we gaan eve makkelijk doen en doen het in gewoon html en niet tussen de echo ;) ?> <table> <form method="post" action=""> <tr> <td>Gebruikersnaam:</td> <td><input name="gebruikersnaam" type="text"></td> </tr> <tr> <td>Wachtwoord:</td> <td><input name="wachtwoord" type="password"></td> </tr> <tr> <td colspan="2" align="center"><input name="login" value="Login" type="submit"></td> </tr> </form> </table> <? } ?>
|