Kligham
Gebruiker
- Lid geworden
- 7 jan 2009
- Berichten
- 389
Hallo,
Ik heb onlangs een registratie formulier gemaakt. Daarnaast heb ik ook een script die de invoer van gegevens moet controleren. Nu is het zo dat ik een try en catch functie gebruik om een fout te detecteren en bijgevolg een exception te throwen. Het gevolg hierbij is nu dat wanneer hij een fout detecteert, meteen een foutmelding geeft en niet meer verder controleert.
Eigenlijk zou ik het zo willen hebben dat hij alles controleert en alle errors tesamen weergeeft. Weet er iemand welke functie ik hier zo kunnen gebruiken?
Ik geef hier alvast mijn try en catch functie:
Ik heb onlangs een registratie formulier gemaakt. Daarnaast heb ik ook een script die de invoer van gegevens moet controleren. Nu is het zo dat ik een try en catch functie gebruik om een fout te detecteren en bijgevolg een exception te throwen. Het gevolg hierbij is nu dat wanneer hij een fout detecteert, meteen een foutmelding geeft en niet meer verder controleert.
Eigenlijk zou ik het zo willen hebben dat hij alles controleert en alle errors tesamen weergeeft. Weet er iemand welke functie ik hier zo kunnen gebruiken?
Ik geef hier alvast mijn try en catch functie:
PHP:
try {
//Controleren van $gebruikersnaam
if (!valid_gebruikersnaam($gebruikersnaam)){
throw new Exception('Gebruikersnaam ongeldig');
}
if (!valid_wachtwoord($wachtwoord, $wachtwoord_controle)){
throw new Exception('Wachtwoord verkeerd');
}
if (!valid_emailadres($emailadres)){
throw new Exception('Emailadres ongeldig');
}
if (!valid_voornaam($voornaam)){
throw new Exception('voornaam ongeldig');
}
if (!valid_achternaam($achternaam)){
throw new Exception('achternaam ongeldig');
}
if (!valid_straat($straat)){
throw new Exception('straat ongeldig');
}
if (!valid_huisnummer($huisnummer)){
throw new Exception('huisnummer ongeldig');
}
if (!valid_gemeente($gemeente)){
throw new Exception('gemeente ongeldig');
}
if (!valid_postcode($postcode)){
throw new Exception('postcode ongeldig');
}
if (!valid_telefoon_gsm_nummer($telefoon_gsm_nummer)){
throw new Exception('telefoon- of gmsnnummer ongeldig');
}
//Een random referentie aanmaken
$tekens = 30;
$activatiecode = random_generator($tekens);
//Mysql beveiliging
$wachtwoord_encrypt = hash('sha512', $wachtwoord);
$activatiecode_encrypt = hash('sha256', $activatiecode);
//Connectie maken met database
$connection = db_connect();
//De gegevens wegschrijven in de database
$query = $connection->query("INSRT INTO temp_gebruiker (gebruikersnaam, wachtwoord, emailadres, voornaam, achternaam, straat, huisnummer, bus, gemeente, postcode, land, telefoon_gsm_nummer, activatiecode) VALUES ('$gebruikersnaam', '$wachtwoord_encrypt', '$emailadres', '$voornaam', '$achternaam', '$straat', '$huisnummer', '$bus', '$gemeente', '$postcode', '$land', '$telefoon_gsm_nummer', '$activatiecode_encrypt')");
if (!$query){
throw new Exception('Godvermiljaardendju twilt nu nog nie in mijn database geraken');
} else {
mail_registratie($emailadres, $voornaam, $achternaam, $straat, $huisnummer, $bus, $gemeente, $postcode, $land, $telefoon_gsm_nummer);
}
}
catch (Exception $exception){
echo $exception->getMessage();
exit;
}