Grafische interesse |
|
Je moet je voorstellen dat alles perfect werkt met inloggen enzo. Je maakt drie nieuwe registratie eisen, die worden keurig in je db gezet. Je gaat nu gewoon inloggen met dit script:
<?php if(isset($_POST['Submit'])) {
if($_POST['poging'] == $cfg['poging']+1) { // Reeds 3 pogingen achter de rug?
header("Location: wachtwoord.php");
}
$checkg = mysql_result(mysql_query("SELECT COUNT(*) FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."'"),0);
$checkp = mysql_result(mysql_query("SELECT COUNT(*) FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."' AND wachtwoord='".md5($_POST['wachtwoord'])."'"),0);
if($_POST['gebruikersnaam'] == "" || $_POST['wachtwoord'] == "") {
$error[] = 'Vul alle velden in!';
}
if($checkg == 0 && $_POST['gebruikersnaam'] != "") {
$error[] = 'De ingevoerde gebruikersnaam is niet geregistreerd.';
}
if($_POST['wachtwoord'] != "" && $_POST['gebruikersnaam'] != "" && $checkp == 0) {
$error[] = 'Het ingevoerde wachtwoord is niet correct.';
}
$fouten = sizeof($error); // aantal errors tellen
if($fouten != 0) { // Er is minstens 1 error
echo 'Kan niet inloggen omwille van de volgende reden(en):';
echo '<ul>';
for($i = 0; $i < $fouten; $i++) {
echo '<li>'.$error[$i].'</li>';
}
echo '</ul>';
echo 'Poging '.$_POST['poging'].' van '.$cfg['poging'];
} else {
session_start();
$res = mysql_query("SELECT * FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."'");
$row = mysql_fetch_assoc($res);
setcookie("gebruikersnaam",$row['gebruikersnaam'],time()+$_POST['tijd'],"/");
setcookie("wachtwoord",$row['wachtwoord'],time()+$_POST['tijd'],"/");
$_SESSION['gebruiker'] = $row['gebruikersnaam'];
$_SESSION['gid'] = $row['id'];
header("Location: index.php");
}
} ?>
<?php if(isset($_POST['Submit'])) { if($_POST['poging'] == $cfg['poging']+1) { // Reeds 3 pogingen achter de rug? header("Location: wachtwoord.php"); } $checkg = mysql_result(mysql_query("SELECT COUNT(*) FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."'"),0); $checkp = mysql_result(mysql_query("SELECT COUNT(*) FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."' AND wachtwoord='".md5($_POST['wachtwoord'])."'"),0); if($_POST['gebruikersnaam'] == "" || $_POST['wachtwoord'] == "") { $error[] = 'Vul alle velden in!'; } if($checkg == 0 && $_POST['gebruikersnaam'] != "") { $error[] = 'De ingevoerde gebruikersnaam is niet geregistreerd.'; } if($_POST['wachtwoord'] != "" && $_POST['gebruikersnaam'] != "" && $checkp == 0) { $error[] = 'Het ingevoerde wachtwoord is niet correct.'; } $fouten = sizeof($error); // aantal errors tellen if($fouten != 0) { // Er is minstens 1 error echo 'Kan niet inloggen omwille van de volgende reden(en):'; for($i = 0; $i < $fouten; $i++) { echo '<li>'.$error[$i].'</li>'; } echo 'Poging '.$_POST['poging'].' van '.$cfg['poging']; } else { $res = mysql_query("SELECT * FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."'"); setcookie("gebruikersnaam",$row['gebruikersnaam'],time()+$_POST['tijd'],"/"); setcookie("wachtwoord",$row['wachtwoord'],time()+$_POST['tijd'],"/"); $_SESSION['gebruiker'] = $row['gebruikersnaam']; $_SESSION['gid'] = $row['id']; header("Location: index.php"); } } ?>
Wat dus normaal gewoon werkt:s Maar nu gaat hij dus wel netjes naar index, zonder fout melding maar hij maakt geen sessie.
Zo beter^^ |