Jonathan
Legacy Member
Hoi,
Ik zit al een paar uur te sukkelen met een nochtans eenvoudig stuk code. Ik ben ergens de mist in gegaan maar weet niet goed waar. Uiteindelijk heb ik besloten om het hier te komen vragen.
Het eerste deel van m'n code werkt zoals ze hoort, doch bij de functie $stmt->fetch() gaat hij uit de bocht.
Wanneer de login gegevens in de $_POST correct zijn is er niks aan de hand, dan krijg ik gewoon "Welkom $user" bericht. Wanneer de login gegevens echter verkeerd zijn krijg ik de error "Er is een fout opgetreden" ( de 1ste van de 2 daar beneden in de code ) zonder verdere info ( Ik krijg dus geen error terug van die stmt->error ) terwijl ik het bericht "foute gegevens verwacht".
Mijn manier van werken lijkt me correct en toch lukt het echt niet, ik word stilaan gek dat ik dit niet opgelost krijg :/
Heb de code een beetje vereenvoudigd en enkel de basis laten staan om het makkelijker te maken ( kben zeker dat het probleem gebeurt in dit deel van de code ).
Ik zit al een paar uur te sukkelen met een nochtans eenvoudig stuk code. Ik ben ergens de mist in gegaan maar weet niet goed waar. Uiteindelijk heb ik besloten om het hier te komen vragen.
Het eerste deel van m'n code werkt zoals ze hoort, doch bij de functie $stmt->fetch() gaat hij uit de bocht.
Wanneer de login gegevens in de $_POST correct zijn is er niks aan de hand, dan krijg ik gewoon "Welkom $user" bericht. Wanneer de login gegevens echter verkeerd zijn krijg ik de error "Er is een fout opgetreden" ( de 1ste van de 2 daar beneden in de code ) zonder verdere info ( Ik krijg dus geen error terug van die stmt->error ) terwijl ik het bericht "foute gegevens verwacht".
Mijn manier van werken lijkt me correct en toch lukt het echt niet, ik word stilaan gek dat ik dit niet opgelost krijg :/
Heb de code een beetje vereenvoudigd en enkel de basis laten staan om het makkelijker te maken ( kben zeker dat het probleem gebeurt in dit deel van de code ).
PHP:
<?php
// kijken of er effectief geklikt is ( beveiliging ).
if( isset( $_POST["btnLogin"] ) ){
// gebruikersnaam en wachtwoord in variabelen steken en het paswoord als md5-hash coderen.
$username = trim($_POST["txtUsername"]);
$password = md5($_POST["txtPassword"]);
// echo $username . $password;
$sql = "SELECT gebruikersnaam, created FROM tblusers WHERE gebruikersnaam=? AND password=?";
// prepared statement.
if($stmt = $dbc->prepare($sql)){
$stmt->bind_param("ss", $username, $password);
if($stmt->execute()){
$stmt->store_result();
$stmt->bind_result($user, $created);
if($stmt->fetch()){
if($stmt->num_rows() == 0){
$_SESSION["logged_in"] = false;
$melding = "foute gegevens";
} else {
$_SESSION["logged_in"] = true;
$melding = "welkom " . $user;
}
echo $melding;
} else {
echo("Er is een fout opgetreden: " . $stmt->error . "");
}
} else {
echo("Er is een fout opgetreden: " . $dbc->error . "");
}
}
}
?>
