Ik heb op het moment de volgende code

if(isset($_POST['submit']) && $_POST['submit'] == 'Verstuur'){
            
    $naam = stripslashes(trim($_POST['naam']));
    $tussenvoegsel = stripslashes(trim(isset($_POST['tussenvoegsel'])?$_POST['tussenvoegsel']:NULL));
    $achternaam = stripslashes(trim($_POST['achternaam']));
    $gebDatum = stripslashes(trim(isset($_POST['gebdatum'])?$_POST['gebdatum']:NULL));
    $straat = stripslashes(trim(isset($_POST['straat'])?$_POST['straat']:NULL));
    $postcode = stripslashes(trim(isset($_POST['postcode'])?$_POST['postcode']:NULL));
    $huisnummer = stripslashes(trim(isset($_POST['huisnummer'])?$_POST['huisnummer']:NULL));
    $toevoeging = stripslashes(trim(isset($_POST['toevoeging'])?$_POST['toevoeging']:NULL));
    $woonplaats = stripslashes(trim(isset($_POST['woonplaats'])?$_POST['woonplaats']:NULL));
    $email = stripslashes(trim(isset($_POST['email'])?$_POST['email']:NULL));
    $ingDatum = stripslashes(trim($_POST['ingdatum']));
    $geslacht = stripslashes(trim((isset($_POST['geslacht'])?$_POST['geslacht']:NULL)));
    
    //Valideer naam
    if(empty($naam)){
        $naamError = $errors['form']['gNaam'];
        $error = true;
    }
    
    //Valideer achternaam
    if(empty($achternaam)){
        $anaamError = $errors['form']['gAnaam'];
        $error = true;
    }
    
    //Valideer geboorte datum
    if(empty($gebDatum)){
        $gebdateError = $errors['form']['gDatum'];
        $error = true;
    }else{
        $valgebDatum = date_validation($gebDatum);
        
        if($valgebDatum == false){
            $gebdateError = $errors['form']['ongDatum'];
            $error = true;
        }
        
        if($valgebDatum == "Toekomst"){
            $gebdateError = $errors['form']['toekDatum'];
            $error = true;
        }
    }    
    //Valideer straat
    if(!empty($straat)){
        if(!preg_match('/^[a-zA-Z]*$/', $straat)){
            $huisnrError = $errors['form']['ongStraat'];
            $error = true;
        }
    }

    //Valideer huisnummer
    if(!empty($huisnummer)){
        if(!preg_match('/^[0-9]*$/', $huisnummer)){
            $huisnrError = $errors['form']['ongHuisnr'];
            $error = true;
        }
    }
    
    //Valideer toevoeging
    if(!empty($toevoeging)) {
        if(!preg_match('/^[a-zA-Z]*$/', $toevoeging)) {
            $toevgingError = $errors['form']['ongToevging'];
            $error = true;
        }
    }
    
    //Valideer postcode
    if(!empty($postcode)){
        if(!preg_match('/^(\d\d\d\d)[a-zA-Z][a-zA-Z]$/', $postcode)){
            $postcodeError = $errors['form']['ongPostcode'];
            $error = true;
        }
    }
    
    //Valideer woonplaats
    if(!empty($woonplaats)){
        if(!preg_match('/^[a-zA-Z]+$/', $woonplaats)){
        $woonpltsError = $errors['form']['ongWoonplts'];
        $error = true;
        }
    }
    
    //Valideer email
    if(empty($email)){
        $emailError = $errors['form']['gEmail'];
        $error = true;
    }else{
        $checkEmail = test_email($email);
        if($checkEmail=="ongeldig"){
            $emailError = $errors['form']['ongEmail'];
            $error = true;
        }
    }
    
    //Valideer ingangsdatum
    if(empty($ingDatum)){
        $ingdateError = $errors['form']['gDatum'];
        $error = true;
    }else{
        $valIngDatum = date_validation($ingDatum);
        
        if($valIngDatum == false){
            $ingdateError = $errors['form']['ongDatum'];
            $error = true;
        }
        
        if($valIngDatum == "Toekomst"){
            $ingdateError = $errors['form']['toekDatum'];
            $error = true;
        }
    }
    
    //Valideer geslacht
    if(empty($geslacht)){
        $geslachtError = $errors['form']['gGeslacht'];
        $error = true;
    }


Nu wil ik eigenlijk de code versimpelen naar een enkele array zodat het sneller en makkelijker werkt. Hoe zouden jullie dit aanpakken?
Zonder verdere code zou ik het niet kunnen zeggen Michel.
Ik ben geheel opnieuw begonnen en dit is mijn code tot nu toe:



$errorMsg = "";
$message = "";
$errors = "";
$voornaamerror = "";
$straatfout = "";


if(isset($_POST['submit']) && $_POST['submit'] == 'Verstuur'){
            
    $voornaam = stripslashes(trim($_POST['voornaam']));
    $tussenvoegsel = stripslashes(trim(isset($_POST['tussenvoegsel'])?$_POST['tussenvoegsel']:NULL));
    $achternaam = stripslashes(trim($_POST['achternaam']));
    $gebDatum = stripslashes(trim(isset($_POST['geboortedatum'])?$_POST['geboortedatum']:NULL));
    $straat = stripslashes(trim(isset($_POST['straat'])?$_POST['straat']:NULL));
    $postcode = stripslashes(trim(isset($_POST['postcode'])?$_POST['postcode']:NULL));
    $huisnummer = stripslashes(trim(isset($_POST['huisnummer'])?$_POST['huisnummer']:NULL));
    $toevoeging = stripslashes(trim(isset($_POST['toevoeging'])?$_POST['toevoeging']:NULL));
    $woonplaats = stripslashes(trim(isset($_POST['woonplaats'])?$_POST['woonplaats']:NULL));
    $email = stripslashes(trim(isset($_POST['email'])?$_POST['email']:NULL));
    $ingDatum = stripslashes(trim($_POST['ingangsdatum']));
    $eindDatum = stripslashes(trim($_POST['einddatum']));
    $geslacht = stripslashes(trim((isset($_POST['geslacht'])?$_POST['geslacht']:NULL)));
    
    //controle op voornaam
    if(empty($voornaam)){
        $voornaamerror = $errors['geenvoornaam'] = 'U heeft geen voornaam ingevuld.';
        $errors = true;
    }

    if(empty($straat)){
        $straatfout = $errors['geenstraat'] = 'U heeft geen straat ingevuld.';
        $errors = true;
    }

}
?>
[code]
<header>
<h1>Sport en Spel</h1><div class="imgtext">
</header>
<div id="container">
        <span><?php echo $message;?></span>
        <span class=error><?php echo $errorMsg;?></span>
        <div class="imgtext">
            <center><img alt="sport" src="img/sports1.jpg"></center>
            <p><?php    $pTableExist = mysqli_query($connect, "show tables like 'lidmaatschap'");
    if ($rTableExist = mysqli_fetch_array($pTableExist)) {
        echo $welkomstekst;?>
            <h2>Aanmeld formulier</h2>
            <form method="POST" action="nieuwopdracht6.php">

                    <span class = error><?php echo $voornaamerror;?></span>
                    <label for="voornaam">*Voornaam:</label>
                    <input type="text" id="voornaam" name="voornaam" value>
        
                    <label for="tussenvoegsel">Tussenvoegsel:</label>
                    <input type="text" id="tussenvoegsel" name="tussenvoegsel">
        

                    <label for="achternaam">*Achternaam:</label>
                    <input type="text" id="achternaam" name="achternaam">
                    
                    <span class = error></span>
                    <label for="geboortedatum">*Geboortedatum: (dd-mm-jjjj)</label>
                    <input type="text" id="geboortedatum" name="geboortedatum">
                    
                    <div id = "straat-huisnr">

                                <span class = error><?php echo $straatfout;?></span>
                                <label for="straat">Straat:</label>
                                <input type="text" id="straat" name="straat">

                                <label for="huisnummer">nr.</label>
                                <input type="text" id="huisnummer" maxlength="5" name="huisnummer">

                                <label for="toevoeging">Toev.</label>
                                <input type="text" id="toevoeging" maxlength="3" name="toevoeging">

                    
                    <span class = error></span>
                    <label for="postcode">Postcode:</label>
                    <input type="text" id="postcode" name="postcode">
                

                    <span class = error></span>
                    <label for="woonplaats">Woonplaats:</label>
                    <input type="text" id="woonplaats" name="woonplaats">
        
                    <span class = error></span>
                    <label for="email">*E-mail:</label>
                    <input type="email" id="email" name="email">
        
                    <span class = error></span>
                    <label for="ingangsdatum">*Ingangsdatum: (dd-mm-jjjj)</label>
                    <input type="text" id="ingangsdatum" name="ingangsdatum">
        
                    <span class = error></span>
                    <label for="einddatum">*Einddatum: (dd-mm-jjjj)</label>
                    <input type="text" id="einddatum" name="einddatum">

                    <div class="geslacht">
                            <label class="geslacht">*Geslacht:</label><span class = error></span>
                            <input type="radio" id="man" name="geslacht" value="m"><label for="man">Man</label>
                            <input type="radio" id="vrouw" name="geslacht" value="v"><label for="vrouw">Vrouw</label>
                    </div>
        
                    <label for="form-sport">*Sportonderdeel:</label>
                    <SELECT NAME="sport">
                    <OPTION VALUE="Tennis">Tennis</OPTION>
                    <OPTION VALUE="Voetbal">Voetbal</OPTION>
                    <OPTION VALUE="Tafeltennis">Tafeltennis</OPTION>
                    <OPTION VALUE="Biljart">Biljart</OPTION>
                    </SELECT>
                    <BR>
        
                    <label for=lesdag">Lesdag:</label>
                    <SELECT NAME="lesdag">
                    <OPTION VALUE="Maandag">Maandag</OPTION>
                    <OPTION VALUE="Dinsdag">Dinsdag</OPTION>
                    <OPTION VALUE="Woensdag">Woensdag</OPTION>
                    <OPTION VALUE="Donderdag">Donderdag</OPTION>
                    <OPTION VALUE="Vrijdag">Vrijdag</OPTION>
                    </SELECT>
                    <BR>
                        
                </div>
                
                <p>(*)Verplichte velden.</p>
                <div class="submit_reset">
                        <input class="btn" type="submit" name="submit" value="Verstuur">
                        <input class="btn" type="submit" name="reset" value="Reset">
                </div>
            </form>
    </div>
    <?php
    }else{
        echo $databaseleeg;
    }?></p>


Echter krijg ik nu de melding
Cannot use a scalar value as an array

Bij het gebruik van voornaam werkt de foutanalyse wel maar wanneer ik doorga naar een tweede analyse krijg ik foutmeldingen.
Volgens mij is de oplossing vrij simpel maar ik krijg het er niet uit :(

[size=xsmall]Toevoeging op 11/09/2017 10:40:17:[/size]

- Ariën - op 25/08/2017 22:59:20

Ik zit even in je script te kijken, maar wat wil je precies bereiken?
Je hebt toch als een array: $errors['form']?

Wat opmerkingen:
- gebruik if($_SERVER['REQUEST_METHOD']=="POST") { om te controleren of iets verstuurd is.
- Waarom stripslashes? Zelf raad ik aan om bij de uitvoer de data te beveiligen. En stripslashes lijkt mij overbodig.


Ik heb ook nog een vraag over bovenstaande:

ipv
if(isset($_POST['submit']) && $_POST['submit'] == 'Verstuur'){


de volgende code
if($_SERVER['REQUEST_METHOD']=="POST") {


Klopt dit? Zo ja, waarom deze code?



Je wilt natuurlijk kijken of je formulier verstuurd is op de juiste methode (POST), en niet of een bepaald formulier-onderdeel bestaat.

Reageren