Kligham
Gebruiker
- Lid geworden
- 7 jan 2009
- Berichten
- 389
Hallo,
Mijn empty () functie werkt niet (en natuurlijk de rest van de validering ook niet). Ik weet niet waaraan het ligt. De exceptions heb ik enkel nog maar aangepast bij valid_gebruikersnaam (dit is een functie uit het script registratie_validatie), de rest volgt later als dit probleem is opgelost.
registratie.php:
registratie_validatie.php:
Als ik op registreer druk op mijn pagina krijg ik geen vermelding dat er iets verkeerd loopt. Dit zou normaal gezien moeten als er niets is ingevuld bij gebruikersnaam.
Mijn empty () functie werkt niet (en natuurlijk de rest van de validering ook niet). Ik weet niet waaraan het ligt. De exceptions heb ik enkel nog maar aangepast bij valid_gebruikersnaam (dit is een functie uit het script registratie_validatie), de rest volgt later als dit probleem is opgelost.
registratie.php:
PHP:
<?php
function registratie(){
#### Registratie script ####
//Include de nodige bestanden
require_once ('registratie_validatie.php');
require_once ('db_fns.php');
require_once ('mail_fns.php');
require_once ('generator_fns.php');
//Aanmaak nodige short variable names
$gebruikersnaam = $_POST['gebruikersnaam'];
$wachtwoord = $_POST['wachtwoord'];
$wachtwoord_controle = $_POST['wachtwoord_controle'];
$emailadres = $_POST['emailadres'];
$voornaam = $_POST['voornaam'];
$achternaam = $_POST['achternaam'];
$straat = $_POST['straat'];
$huisnummer = $_POST['huisnummer'];
$bus = $_POST['bus'];
$gemeente = $_POST['gemeente'];
$postcode = $_POST['postcode'];
$land = $_POST['land'];
$telefoon_gsm_nummer = $_POST['telefoon_gsm_nummer'];
try {
//Controleren van $gebruikersnaam
valid_gebruikersnaam($gebruikersnaam);
//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;
}
}
?>
registratie_validatie.php:
PHP:
<?php
#### Validatie functions ####
//Include de nodige bestanden
require_once ('db_fns.php');
//Validatie gebruikersnaam
function valid_gebruikersnaam($gebruikersnaam, $minlength = 2, $maxlength = 16){
$gebruikersnaam_check = trim($gebruikersnaam);
if (empty($gebruikersnaam_check)){
throw new Exception('Gebruikersnaam: Het veld is leeg'); // Het veld is leeg
}
if (strlen($gebruikersnaam_check) > $maxlength){
throw new Exception('Gebruikersnaam: Uw gebruikersnaam mag niet meer dan 16 tekens bevatten'); // De gebruikersnaam is te lang
}
if (strlen($gebruikersnaam_check) < $minlength){
throw new Exception('Gebruikersnaam: Uw gebruikersnaam moet uit minimaal 2 tekens bestaan'); // De gebruikersnaam is te kort
}
//Connectie met database
$connection = db_connect();
//Controle of gebruikersnaam uniek is
$query = $connection->query("select * from gebruiker where gebruikersnaam ='" . $gebruikersnaam_check. "'");
if (!$query){
throw new Exception('De query kon niet uitgevoerd worden');
}
if ($query->num_rows > 0){
throw new Exception('Gebruikersnaam: De gebruikersnaam' . $gebruikersnaam_check . 'is al in gebruik'); //Er is al zo'n gebruikersnaam aanwezig
}
db_disconnect();
$check = ereg('^[[:alnum:][:blank:]]+$', $gebruikersnaam_check); //A-Z, a-z, 0-9 en spaties zijn toegelaten
if ($check)
{
return true; // Er zijn geen verkeerde tekens gevonden
} else
{
throw new Exception('Gebruikersnaam: Enkel letters, cijfers en spaties zijn toegelaten'); //Er zijn verkeerde tekens gevonden
}
}
?>
Als ik op registreer druk op mijn pagina krijg ik geen vermelding dat er iets verkeerd loopt. Dit zou normaal gezien moeten als er niets is ingevuld bij gebruikersnaam.
Laatst bewerkt: