simpele array vs multi array
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
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;
}
$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?
Gewijzigd op 25/08/2017 22:55:31 door Michel Bak
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.
Als ik de vraag moet beantwoorden dan krijg je een OOP voorbeeld waarin geen array gebruikt wordt maar een object! Ik weet niet of je dat wilt.
Als je met functies wilt gaan werken zie ik wel een reden om die losse variabelen in een array te stoppen omdat je dan de hele array in een keer door kunt geven aan een andere functie.
Gezien je vraagstelling denk ik dat je nog niet erg bekend bent met array's. Ik zou je dan willen vragen om een tut door te lopen waardoor je er bekender mee wordt. Let dan ook even goed op het verschil tussen een numerieke array en een associatieve array..
Ik ben bezig met een opdracht en als feedback kreeg ik: 1.
Gebruik één simpele array voor de foutafhandeling. Geen multidimensionale array.
Het gaat hier om een simpel formulier, u gaat dat onnodig complex maken door een multidimensionale array te gebruiken die absoluut niet nodig is. U moet laten zien dat u het ook anders (en beter) kan doen.
Ik ben inderdaad nog maar een beginner en snap nog niet helemaal wat hiermee bedoelt wordt
En ik begrijp je vraag en de opmerking.
Je doet dit:
Dat heb je niet nodig. Dit is genoeg wordt er gezegd.
Ik zou overigens zelf veel liever zien dat je dit doet:
Dus net andersom. Zet alle foutmeldingen (stel dat er meer dan 1 ding niet klopt bij het valideren) in een array.
Gewijzigd op 03/09/2017 23:23:58 door Frank Nietbelangrijk
EDIT: ik ben er al uit, heb het gedeelte array bij $errors er tussenuit gehaald
Dank voor de duidelijke uitleg! Voor nu wil ik de eerste oplossing gebruiken aangezien ik daar al veel mee gedaan heb. Ik heb nl bij het html gedeelte de link gelegd voor bijvoorbeeld
Hoe pas ik dan het volgende gedeelte hiervoor aan?
Na deze opdracht wil ik mij zeker wat meer gaan verdiepen in de laatste oplossing. Deze ziet er veel minder omslachtig uit?!
Dank voor de duidelijke uitleg! Voor nu wil ik de eerste oplossing gebruiken aangezien ik daar al veel mee gedaan heb. Ik heb nl bij het html gedeelte de link gelegd voor bijvoorbeeld
Code (php)
Hoe pas ik dan het volgende gedeelte hiervoor aan?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$errors = array('form'=>array('gNaam'=>"U heeft geen voornaam ingevuld",
'gAnaam'=>"U heeft geen achternaam ingevuld",
'gHuisnr'=>"U heeft geen huisnummer ingevuld",
'gEmail'=>"U heeft geen e-mail ingevuld",
'gDatum'=>"U heeft geen datum opgegeven",
'gGeslacht'=>"Kies een geslacht",
'ongStraat'=>"Straatnaam mag alleen bestaan uit letters",
'ongEmail'=>"E-mail moet 2 op de volgende manier '2 letters'@'2 letters' en eindigen op '.nl'(vb. [email protected])",
'ongPostcode'=>"Postcode moet bestaan uit 4 cijfers en 2 letters (vb. 1234ab)",
'ongHuisnr'=>"Huisnummer moet bestaan uit alleen nummers",
'ongToevging'=>"Toevoeging mag alleen bestaan uit letters",
'ongWoonplts'=>"Woonplaats mag alleen bestaan uit letters",
'ongDatum'=>"Datum format moet dd-mm-jjjj zijn (vb. 15-05-2017)",
'toekDatum'=>"Datum ligt in de toekomst")
);
'gAnaam'=>"U heeft geen achternaam ingevuld",
'gHuisnr'=>"U heeft geen huisnummer ingevuld",
'gEmail'=>"U heeft geen e-mail ingevuld",
'gDatum'=>"U heeft geen datum opgegeven",
'gGeslacht'=>"Kies een geslacht",
'ongStraat'=>"Straatnaam mag alleen bestaan uit letters",
'ongEmail'=>"E-mail moet 2 op de volgende manier '2 letters'@'2 letters' en eindigen op '.nl'(vb. [email protected])",
'ongPostcode'=>"Postcode moet bestaan uit 4 cijfers en 2 letters (vb. 1234ab)",
'ongHuisnr'=>"Huisnummer moet bestaan uit alleen nummers",
'ongToevging'=>"Toevoeging mag alleen bestaan uit letters",
'ongWoonplts'=>"Woonplaats mag alleen bestaan uit letters",
'ongDatum'=>"Datum format moet dd-mm-jjjj zijn (vb. 15-05-2017)",
'toekDatum'=>"Datum ligt in de toekomst")
);
Na deze opdracht wil ik mij zeker wat meer gaan verdiepen in de laatste oplossing. Deze ziet er veel minder omslachtig uit?!
Gewijzigd op 05/09/2017 21:18:15 door Michel Bak
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$errors = array(
'gNaam'=>"U heeft geen voornaam ingevuld",
'gAnaam'=>"U heeft geen achternaam ingevuld",
'gHuisnr'=>"U heeft geen huisnummer ingevuld",
'gEmail'=>"U heeft geen e-mail ingevuld",
'gDatum'=>"U heeft geen datum opgegeven",
'gGeslacht'=>"Kies een geslacht",
'ongStraat'=>"Straatnaam mag alleen bestaan uit letters",
'ongEmail'=>"E-mail moet 2 op de volgende manier '2 letters'@'2 letters' en eindigen op '.nl'(vb. [email protected])",
'ongPostcode'=>"Postcode moet bestaan uit 4 cijfers en 2 letters (vb. 1234ab)",
'ongHuisnr'=>"Huisnummer moet bestaan uit alleen nummers",
'ongToevging'=>"Toevoeging mag alleen bestaan uit letters",
'ongWoonplts'=>"Woonplaats mag alleen bestaan uit letters",
'ongDatum'=>"Datum format moet dd-mm-jjjj zijn (vb. 15-05-2017)",
'toekDatum'=>"Datum ligt in de toekomst"
);
$errors = array(
'gNaam'=>"U heeft geen voornaam ingevuld",
'gAnaam'=>"U heeft geen achternaam ingevuld",
'gHuisnr'=>"U heeft geen huisnummer ingevuld",
'gEmail'=>"U heeft geen e-mail ingevuld",
'gDatum'=>"U heeft geen datum opgegeven",
'gGeslacht'=>"Kies een geslacht",
'ongStraat'=>"Straatnaam mag alleen bestaan uit letters",
'ongEmail'=>"E-mail moet 2 op de volgende manier '2 letters'@'2 letters' en eindigen op '.nl'(vb. [email protected])",
'ongPostcode'=>"Postcode moet bestaan uit 4 cijfers en 2 letters (vb. 1234ab)",
'ongHuisnr'=>"Huisnummer moet bestaan uit alleen nummers",
'ongToevging'=>"Toevoeging mag alleen bestaan uit letters",
'ongWoonplts'=>"Woonplaats mag alleen bestaan uit letters",
'ongDatum'=>"Datum format moet dd-mm-jjjj zijn (vb. 15-05-2017)",
'toekDatum'=>"Datum ligt in de toekomst"
);
hoezo?
Ik woon aan een straat waar een spatie in zit (of sommigen gebruiken een "-" op die plek.
En ik ken ook zat voorbeelden met cijfers (19 septemberplein in Eindhoven bijvoorbeeld).
En voor woonplaatsen idem: 's-Hertogenbosch bijvoorbeeld, of gewoon Den Bosch.
En er zijn ook wel straten met accent letters: De uitvinder Röntgen heeft vast wel ergens een straat.
En gezien de melding over het mailadres, ben ik ook wel benieuwd naar die check.
Maar kijk ook eens naar de filter functies van PHP: http://php.net/filter-input
Ivo P op 06/09/2017 02:02:50:
19 septemberplein in Eindhoven
18 Septemberplein naar onze bevrijdingsdag 18 september 1944.
Ik ben al zo'n 20 jaar geleden verhuisd en bijna nooit meer terug geweest. Maar qua syntax blijft het gelukkig gelijk.
Bottom line was eigenlijk, dat je niet te strikt moet zijn in dit soort dingen. Niets zo irritant als een formulier min of meer fout in te moeten vullen, omdat de maker van de form bepaalde dingen over het hoofd zag:
- de genoemde karakters als enige toestaan in een veld
- een minimum lengte voor straatnamen (er zijn straatnamen van 1 letter te vinden in Nederland)
- idem voor een naar van 3 letters, waar Jo niet zo'n heel gekke naam is.
- verouderde filtering op een emailadres: bijv. hooguit 4 karakters voor de TLD waar al 10 jaar meer mogelijk zijn.
Topper vond ik wel de Kamer van Koophandel die geen "-" in een emailadres wilde hebben. Waar al mijn toenmalige adressen dat wel hadden.
@Frank, ik wil nog even terug komen op
ik maak $errors = ""; aan
zorg voor controle verstuurknop
maak $naam aan
Valideer deze naam op bovenstaande manier
en zet het html formulier klaar als volgt:
Code (php)
1
2
3
2
3
<span class = error><?php echo $errors['geenvoornaam'];?></span>
<label for="voornaam">*Voornaam:</label>
<input type="text" id="voornaam" name="voornaam" value>
<label for="voornaam">*Voornaam:</label>
<input type="text" id="voornaam" name="voornaam" value>
Ik krijg geen meldingen, waar ga ik de fout in, ik zie het even niet meer
Zonder verdere code zou ik het niet kunnen zeggen Michel.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
$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;
}
}
?>
$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 (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
<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>
<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
Quote:
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 :(
Toevoeging op 11/09/2017 10:40:17:
- 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.
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
de volgende code
Klopt dit? Zo ja, waarom deze code?
Gewijzigd op 11/09/2017 10:21:51 door Michel Bak
Je wilt natuurlijk kijken of je formulier verstuurd is op de juiste methode (POST), en niet of een bepaald formulier-onderdeel bestaat.