empty() function

Status
Niet open voor verdere reacties.

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:
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:
query foutje:
INSRT INTO temp_gebruiker
-> INSERT INTO temp_gebruiker

welke fout melding krijg je?
 
Laatst bewerkt:
query foutje:
INSRT INTO temp_gebruiker
-> INSERT INTO temp_gebruiker

welke fout melding krijg je?

Dank je, khad die fout nog niet opgemerkt.

De eigenlijke fout was dat ik vergeten ben die function weg te laten. Had die er gezet om ergens anders te kunnen testen. In ieder geval bedankt voor die fout op te merken :thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan