na toevoegen weergeven?
Ik denk dat ik ergens wat inzicht mis. Dit is de code die ik nu heb. Als iemand een aanwijzing heeft waar het mis gaat verneem ik het graag.
administraties0.php
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
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
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
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
<?php
include("databaseopenen.php");
// functie die de formuliervelden valideert en foutmeldingen aanmaakt
function validate($naam, $email) {
$errors = array();
// validatieregels voor de naam
if(strlen($naam) < 1) {
$errors[] = 'U heeft geen naam ingevuld.';
}
// validatieregels voor het mailadres
if(!strlen($email)) :
$errors[] = 'U heeft geen email adres ingevuld.';
elseif(!filter_var($email, FILTER_VALIDATE_EMAIL)):
$errors[] = 'U heeft een ongeldig email adres ingevuld.';
endif;
// geef de array met foutmeldingen terug
return $errors;
}
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$errors = array();
if (!empty($_GET["id"])) {
// indien het formulier verstuurd is
if($_SERVER['REQUEST_METHOD'] == 'POST') {
// valideer de ingevulde gegevens
$errors = validate($naam, $email);
// als er dan geen fouten zijn ga na het opslaan naar index.php
if(!count($errors)) {
$query03 = "UPDATE 'tabel_administraties'
SET 'administraties_naam' = :administraties_naam,
'administraties_straat' = :administraties_straat,
'administraties_huisnr' = :administraties_huisnr,
'administraties_postcode' = :administraties_postcode,
'administraties_plaats' = :administraties_plaats,
'administraties_telefoonnr' = :administraties_telefoonnr,
'administraties_kvk' = :administraties_kvk,
'administraties_btwnr' = :administraties_btwnr,
'administraties_website' = :administraties_website,
'administraties_email' = :administraties_email
WHERE 'administraties_id' = :administraties_id";
$stmt = $dbh->prepare($query03);
$stmt->execute();
//PDO::FETCH_ASSOC: returns an array indexed by column name as returned in your result set
$record = $stmt->fetch(PDO::FETCH_ASSOC);
//gegevens opslaan in de database
$stmt->bindParam(':administraties_id',$adm_id);
$stmt->bindParam(':administraties_naam',$_POST["adm_naam"]);
$stmt->bindParam(':administraties_straat',$_POST["adm_straat"]);
$stmt->bindParam(':administraties_huisnr',$_POST["adm_huisnummer"]);
$stmt->bindParam(':administraties_postcode',$_POST["adm_postcode"]);
$stmt->bindParam(':administraties_plaats',$_POST["adm_plaats"]);
$stmt->bindParam(':administraties_telefoonnr',$_POST["adm_telefoonnr"]);
$stmt->bindParam(':administraties_kvk',$_POST["adm_kvk"]);
$stmt->bindParam(':administraties_btwnr',$_POST["adm_btwnr"]);
$stmt->bindParam(':administraties_website',$_POST["adm_website"]);
$stmt->bindParam(':administraties_email',$_POST["adm_email"]);
$link1 = "index.php?id=" . $adm_id;
$_GET['id'] = null;
header('Location: '.$link1);
exit;
}
} else {
//Dit kan alleen uitgevoerd worden als id is ingegeven bij de url
$adm_id = intval($_GET['id']);
$query02 = "SELECT * FROM tabel_administraties WHERE administraties_id=" . $adm_id . " LIMIT 1";
$stmt = $dbh->prepare($query02);
$stmt->execute();
//PDO::FETCH_ASSOC: returns an array indexed by column name as returned in your result set
$record = $stmt->fetch(PDO::FETCH_ASSOC);
$adm_naam = $record['administraties_naam'];
$adm_straat = $record['administraties_straat'];
$adm_huisnummer = $record['administraties_huisnr'];
$adm_postcode = $record['administraties_postcode'];
$adm_plaats = $record['administraties_plaats'];
$adm_telefoonnr = $record['administraties_telefoonnr'];
$adm_kvk = $record['administraties_kvk'];
$adm_btwnr = $record['administraties_btwnr'];
$adm_website = $record['administraties_website'];
$adm_email = $record['administraties_email'];
}
} else {
// indien het formulier verstuurd is
if($_SERVER['REQUEST_METHOD'] == 'POST') {
// valideer de ingevulde gegevens
$errors = validate($naam, $email);
// als er dan geen fouten zijn ga na het opslaan naar index.php
if(!count($errors)) {
$query03 = "INSERT INTO tabel_administraties (
administraties_naam, administraties_straat, administraties_huisnr, administraties_postcode, administraties_plaats, administraties_telefoonnr, administraties_kvk, administraties_btwnr, administraties_website, administraties_email
) VALUES (
:administraties_naam, :administraties_straat, :administraties_huisnr, :administraties_postcode, :administraties_plaats, :administraties_telefoonnr, :administraties_kvk, :administraties_btwnr, :administraties_website, :administraties_email
)";
$stmt = $dbh->prepare($query03);
$stmt->execute();
//PDO::FETCH_ASSOC: returns an array indexed by column name as returned in your result set
$record = $stmt->fetch(PDO::FETCH_ASSOC);
//gegevens opslaan in de database
$stmt->bindParam(':administraties_naam',$_POST["adm_naam"]);
$stmt->bindParam(':administraties_straat',$_POST["adm_straat"]);
$stmt->bindParam(':administraties_huisnr',$_POST["adm_huisnummer"]);
$stmt->bindParam(':administraties_postcode',$_POST["adm_postcode"]);
$stmt->bindParam(':administraties_plaats',$_POST["adm_plaats"]);
$stmt->bindParam(':administraties_telefoonnr',$_POST["adm_telefoonnr"]);
$stmt->bindParam(':administraties_kvk',$_POST["adm_kvk"]);
$stmt->bindParam(':administraties_btwnr',$_POST["adm_btwnr"]);
$stmt->bindParam(':administraties_website',$_POST["adm_website"]);
$stmt->bindParam(':administraties_email',$_POST["adm_email"]);
$link1 = "index.php";
$_GET['id'] = null;
header('Location: '.$link1);
exit;
}
} else {
//id is niet meegegeven bij de url dus is het een nieuw record
$adm_id = "nieuw";
$adm_naam = "";
$adm_straat = "";
$adm_huisnummer = "";
$adm_postcode = "";
$adm_plaats = "";
$adm_telefoonnr = "";
$adm_kvk = "";
$adm_btwnr= "" ;
$adm_website = "";
$adm_email = "";
}
}
?><!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>administraties0</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
<?php
if(count($errors)) {
echo '<ul id="errors">';
foreach($errors as $error) {
echo '<li>' . $error . '</li>';
}
echo '</ul>';
}
?>
<table class="empty">
<tr>
<td width="250" class="vak1">
</td>
<td class="programmadeel">
<form action="" method="post">
<h1><B>Administratie (<?php echo $adm_id; ?>)<B></h1>
<table>
<tr><td>
<div class="pf">Naam : </div></td><td><input type="text" id="adm_naam" name="adm_naam" tabindex="1" size="107" value="<?php echo $adm_naam; ?>">
</td></tr><tr><td>
<div class="pf">Straat + Huisnummer : </div></td><td><input type="text" id="adm_straat" name="adm_straat" tabindex="2" size="90" value="<?php echo $adm_straat; ?>">
<input type="text" id="adm_huisnummer" name="adm_huisnummer" tabindex="3" size="10" value="<?php echo $adm_huisnummer; ?>">
</td></tr><tr><td>
<div class="pf">Postcode + Plaats : </div></td><td><input type="text" id="adm_postcode" name="adm_postcode" tabindex="4" size="7" value="<?php echo $adm_postcode; ?>">
<input type="text" id="adm_Plaats" name="adm_plaats" tabindex="5" size="93" value="<?php echo $adm_plaats; ?>">
</td></tr><tr><td>
<div class="pf">Telefoonnr : </div></td><td><input type="text" id="adm_telefoonnr" name="adm_telefoonnr" tabindex="6" size="20" value="<?php echo $adm_telefoonnr; ?>">
</td></tr><tr><td>
<div class="pf">KvK : </div></td><td><input type="text" id="adm_kvk" name="adm_kvk" tabindex="7" size="20" value="<?php echo $adm_kvk; ?>">
</td></tr><tr><td>
<div class="pf">BTWnr : </div></td><td><input type="text" id="adm_btwnr" name="adm_btwnr" tabindex="8" size="20" value="<?php echo $adm_btwnr; ?>">
</td></tr><tr><td>
<div class="pf">Website : </div></td><td><input type="text" id="adm_website" name="adm_website" tabindex="9" size="107" value="<?php echo $adm_website; ?>">
</td></tr><tr><td>
<div class="pf">e-mail : </div></td><td><input type="text" id="adm_email" name="adm_email" tabindex="10" size="107" value="<?php echo $adm_email; ?>">
</td></tr>
</table>
<table>
<tr><td>
<input type="reset" value="Velden legen" id="knop_reset" name="knop_reset" alt="Alle velden terug zetten in de default waarde" tabindex="11">
<input type="submit" value="Opslaan" id="knop_opslaan" name="knop_opslaan" alt="Administratie opslaan" tabindex="12">
</table>
</form>
</td>
</tr>
</table>
</body>
</html>
include("databaseopenen.php");
// functie die de formuliervelden valideert en foutmeldingen aanmaakt
function validate($naam, $email) {
$errors = array();
// validatieregels voor de naam
if(strlen($naam) < 1) {
$errors[] = 'U heeft geen naam ingevuld.';
}
// validatieregels voor het mailadres
if(!strlen($email)) :
$errors[] = 'U heeft geen email adres ingevuld.';
elseif(!filter_var($email, FILTER_VALIDATE_EMAIL)):
$errors[] = 'U heeft een ongeldig email adres ingevuld.';
endif;
// geef de array met foutmeldingen terug
return $errors;
}
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$errors = array();
if (!empty($_GET["id"])) {
// indien het formulier verstuurd is
if($_SERVER['REQUEST_METHOD'] == 'POST') {
// valideer de ingevulde gegevens
$errors = validate($naam, $email);
// als er dan geen fouten zijn ga na het opslaan naar index.php
if(!count($errors)) {
$query03 = "UPDATE 'tabel_administraties'
SET 'administraties_naam' = :administraties_naam,
'administraties_straat' = :administraties_straat,
'administraties_huisnr' = :administraties_huisnr,
'administraties_postcode' = :administraties_postcode,
'administraties_plaats' = :administraties_plaats,
'administraties_telefoonnr' = :administraties_telefoonnr,
'administraties_kvk' = :administraties_kvk,
'administraties_btwnr' = :administraties_btwnr,
'administraties_website' = :administraties_website,
'administraties_email' = :administraties_email
WHERE 'administraties_id' = :administraties_id";
$stmt = $dbh->prepare($query03);
$stmt->execute();
//PDO::FETCH_ASSOC: returns an array indexed by column name as returned in your result set
$record = $stmt->fetch(PDO::FETCH_ASSOC);
//gegevens opslaan in de database
$stmt->bindParam(':administraties_id',$adm_id);
$stmt->bindParam(':administraties_naam',$_POST["adm_naam"]);
$stmt->bindParam(':administraties_straat',$_POST["adm_straat"]);
$stmt->bindParam(':administraties_huisnr',$_POST["adm_huisnummer"]);
$stmt->bindParam(':administraties_postcode',$_POST["adm_postcode"]);
$stmt->bindParam(':administraties_plaats',$_POST["adm_plaats"]);
$stmt->bindParam(':administraties_telefoonnr',$_POST["adm_telefoonnr"]);
$stmt->bindParam(':administraties_kvk',$_POST["adm_kvk"]);
$stmt->bindParam(':administraties_btwnr',$_POST["adm_btwnr"]);
$stmt->bindParam(':administraties_website',$_POST["adm_website"]);
$stmt->bindParam(':administraties_email',$_POST["adm_email"]);
$link1 = "index.php?id=" . $adm_id;
$_GET['id'] = null;
header('Location: '.$link1);
exit;
}
} else {
//Dit kan alleen uitgevoerd worden als id is ingegeven bij de url
$adm_id = intval($_GET['id']);
$query02 = "SELECT * FROM tabel_administraties WHERE administraties_id=" . $adm_id . " LIMIT 1";
$stmt = $dbh->prepare($query02);
$stmt->execute();
//PDO::FETCH_ASSOC: returns an array indexed by column name as returned in your result set
$record = $stmt->fetch(PDO::FETCH_ASSOC);
$adm_naam = $record['administraties_naam'];
$adm_straat = $record['administraties_straat'];
$adm_huisnummer = $record['administraties_huisnr'];
$adm_postcode = $record['administraties_postcode'];
$adm_plaats = $record['administraties_plaats'];
$adm_telefoonnr = $record['administraties_telefoonnr'];
$adm_kvk = $record['administraties_kvk'];
$adm_btwnr = $record['administraties_btwnr'];
$adm_website = $record['administraties_website'];
$adm_email = $record['administraties_email'];
}
} else {
// indien het formulier verstuurd is
if($_SERVER['REQUEST_METHOD'] == 'POST') {
// valideer de ingevulde gegevens
$errors = validate($naam, $email);
// als er dan geen fouten zijn ga na het opslaan naar index.php
if(!count($errors)) {
$query03 = "INSERT INTO tabel_administraties (
administraties_naam, administraties_straat, administraties_huisnr, administraties_postcode, administraties_plaats, administraties_telefoonnr, administraties_kvk, administraties_btwnr, administraties_website, administraties_email
) VALUES (
:administraties_naam, :administraties_straat, :administraties_huisnr, :administraties_postcode, :administraties_plaats, :administraties_telefoonnr, :administraties_kvk, :administraties_btwnr, :administraties_website, :administraties_email
)";
$stmt = $dbh->prepare($query03);
$stmt->execute();
//PDO::FETCH_ASSOC: returns an array indexed by column name as returned in your result set
$record = $stmt->fetch(PDO::FETCH_ASSOC);
//gegevens opslaan in de database
$stmt->bindParam(':administraties_naam',$_POST["adm_naam"]);
$stmt->bindParam(':administraties_straat',$_POST["adm_straat"]);
$stmt->bindParam(':administraties_huisnr',$_POST["adm_huisnummer"]);
$stmt->bindParam(':administraties_postcode',$_POST["adm_postcode"]);
$stmt->bindParam(':administraties_plaats',$_POST["adm_plaats"]);
$stmt->bindParam(':administraties_telefoonnr',$_POST["adm_telefoonnr"]);
$stmt->bindParam(':administraties_kvk',$_POST["adm_kvk"]);
$stmt->bindParam(':administraties_btwnr',$_POST["adm_btwnr"]);
$stmt->bindParam(':administraties_website',$_POST["adm_website"]);
$stmt->bindParam(':administraties_email',$_POST["adm_email"]);
$link1 = "index.php";
$_GET['id'] = null;
header('Location: '.$link1);
exit;
}
} else {
//id is niet meegegeven bij de url dus is het een nieuw record
$adm_id = "nieuw";
$adm_naam = "";
$adm_straat = "";
$adm_huisnummer = "";
$adm_postcode = "";
$adm_plaats = "";
$adm_telefoonnr = "";
$adm_kvk = "";
$adm_btwnr= "" ;
$adm_website = "";
$adm_email = "";
}
}
?><!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>administraties0</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
<?php
if(count($errors)) {
echo '<ul id="errors">';
foreach($errors as $error) {
echo '<li>' . $error . '</li>';
}
echo '</ul>';
}
?>
<table class="empty">
<tr>
<td width="250" class="vak1">
</td>
<td class="programmadeel">
<form action="" method="post">
<h1><B>Administratie (<?php echo $adm_id; ?>)<B></h1>
<table>
<tr><td>
<div class="pf">Naam : </div></td><td><input type="text" id="adm_naam" name="adm_naam" tabindex="1" size="107" value="<?php echo $adm_naam; ?>">
</td></tr><tr><td>
<div class="pf">Straat + Huisnummer : </div></td><td><input type="text" id="adm_straat" name="adm_straat" tabindex="2" size="90" value="<?php echo $adm_straat; ?>">
<input type="text" id="adm_huisnummer" name="adm_huisnummer" tabindex="3" size="10" value="<?php echo $adm_huisnummer; ?>">
</td></tr><tr><td>
<div class="pf">Postcode + Plaats : </div></td><td><input type="text" id="adm_postcode" name="adm_postcode" tabindex="4" size="7" value="<?php echo $adm_postcode; ?>">
<input type="text" id="adm_Plaats" name="adm_plaats" tabindex="5" size="93" value="<?php echo $adm_plaats; ?>">
</td></tr><tr><td>
<div class="pf">Telefoonnr : </div></td><td><input type="text" id="adm_telefoonnr" name="adm_telefoonnr" tabindex="6" size="20" value="<?php echo $adm_telefoonnr; ?>">
</td></tr><tr><td>
<div class="pf">KvK : </div></td><td><input type="text" id="adm_kvk" name="adm_kvk" tabindex="7" size="20" value="<?php echo $adm_kvk; ?>">
</td></tr><tr><td>
<div class="pf">BTWnr : </div></td><td><input type="text" id="adm_btwnr" name="adm_btwnr" tabindex="8" size="20" value="<?php echo $adm_btwnr; ?>">
</td></tr><tr><td>
<div class="pf">Website : </div></td><td><input type="text" id="adm_website" name="adm_website" tabindex="9" size="107" value="<?php echo $adm_website; ?>">
</td></tr><tr><td>
<div class="pf">e-mail : </div></td><td><input type="text" id="adm_email" name="adm_email" tabindex="10" size="107" value="<?php echo $adm_email; ?>">
</td></tr>
</table>
<table>
<tr><td>
<input type="reset" value="Velden legen" id="knop_reset" name="knop_reset" alt="Alle velden terug zetten in de default waarde" tabindex="11">
<input type="submit" value="Opslaan" id="knop_opslaan" name="knop_opslaan" alt="Administratie opslaan" tabindex="12">
</table>
</form>
</td>
</tr>
</table>
</body>
</html>
Gewijzigd op 03/09/2017 21:15:11 door Frits van Leeuwen
1. prepare
2. execute
3. bind
Dat is toch niet logisch? Execute doe je helemaal aan het einde. Dus prepare, bind, execute. Ook vang je ook geen fouten af, waardoor je dit soort dingen niet ziet. Exceptions die gegooid worden moet je wel even vangen. Toegegeven, niet helemaal verplicht, maar wel zo handig.
Waarom gebruik je eigenlijk names als $query03, $query03 etc? Wat is er mis met gewoon 1 naam aan te houden als $query of het meer gebruikte $sql?
Gewijzigd op 03/09/2017 21:35:27 door Ben van Velzen
Doordat ik ging splitsen kwam ik daar ook achter (de volgorde).Maar wel heel fijn dat je het me verteld, want dan weet ik het zeker.
Het afvangen wil ik zelf het liefst beperken tot de echt belangrijke punten. Maar ik ga er wel steeds meer over denken om het toch te doen.
$query met nummering doe ik om onderscheid te houden. Soms heb ik meer queries op 1 pagina. Dan zie ik graag welke ik waar gebruik. Door het gebruik van Prepare, heb ik gelijk een variabele waarmee ik ze bij elkaar kan zetten. En zo heb ik ook een overzicht dat ik mogelijk nodig kan hebben.
Ik heb het toevoegen weer onder controle. Nu het bewerken nog. Als ik ook die weer onder controle heb, ga ik ze toch weer samenvoegen.
Toevoeging op 03/09/2017 22:57:51:
Ook dat deel werkt nu. Ik ga ze samenvoegen en dan meld ik me met het resultaat.
Gewijzigd op 03/09/2017 22:32:43 door Frits van Leeuwen
>> $query met nummering doe ik om onderscheid te houden. Soms heb ik meer queries op 1 pagina. Dan zie ik graag welke ik waar gebruik
Dat zie je al door gewoon naar je code te kijken, of door logische namen voor je queries te gebruiken. $query02, $query03 etc zijn net zo veelzeggend als overal $sql gebruiken, wat veel logischer is. Al is het alleen maar omdat je nu de scope ontzettend vervuilt en geheugen weggooit.
Ik heb weer veel geleerd. Bedankt allemaal.
Dit is de uiteindelijke code:
administraties0.php
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
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
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
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
<?php
include("databaseopenen.php");
// functie die de formuliervelden valideert en foutmeldingen aanmaakt
function validate($naam, $email) {
$errors = array();
// validatieregels voor de naam
if(strlen($naam) < 1) {
$errors[] = 'U heeft geen naam ingevuld.';
}
// validatieregels voor het mailadres
if(!strlen($email)) :
$errors[] = 'U heeft geen email adres ingevuld.';
elseif(!filter_var($email, FILTER_VALIDATE_EMAIL)):
$errors[] = 'U heeft een ongeldig email adres ingevuld.';
endif;
// geef de array met foutmeldingen terug
return $errors;
}
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$errors = array();
if (empty($_GET['id'])) {
// initialisatie van de variabelen (zorgt er voor dat variabelen altijd bestaan en een standaardwaarde hebben).
$link1 = "index.php";
$query03 = "INSERT INTO tabel_administraties (
administraties_naam, administraties_straat, administraties_huisnr, administraties_postcode, administraties_plaats, administraties_telefoonnr, administraties_kvk, administraties_btwnr, administraties_website, administraties_email
) VALUES (
:administraties_naam, :administraties_straat, :administraties_huisnr, :administraties_postcode, :administraties_plaats, :administraties_telefoonnr, :administraties_kvk, :administraties_btwnr, :administraties_website, :administraties_email
)";
$naam = '';
$straat = '';
$huisnummer = '';
$postcode = '';
$plaats = '';
$telefoonnr = '';
$kvk = '';
$btwnr = '';
$website = '';
$email = '';
} else {
$adm_id = $_GET['id'];
$link1 = "index.php?id=" . $adm_id;
$query02 = "SELECT * FROM tabel_administraties WHERE administraties_id = :administraties_id LIMIT 1";
$query03 = "UPDATE tabel_administraties
SET administraties_naam = :administraties_naam,
administraties_straat = :administraties_straat,
administraties_huisnr = :administraties_huisnr,
administraties_postcode = :administraties_postcode,
administraties_plaats = :administraties_plaats,
administraties_telefoonnr = :administraties_telefoonnr,
administraties_kvk = :administraties_kvk,
administraties_btwnr = :administraties_btwnr,
administraties_website = :administraties_website,
administraties_email = :administraties_email
WHERE administraties_id = :administraties_id";
//Dit kan alleen uitgevoerd worden als id is ingegeven bij de url
$stmt = $dbh->prepare($query02);
$stmt->bindParam(':administraties_id',$adm_id);
$stmt->execute();
//PDO::FETCH_ASSOC: returns an array indexed by column name as returned in your result set
$record = $stmt->fetch(PDO::FETCH_ASSOC);
$adm_naam = $record['administraties_naam'];
$adm_straat = $record['administraties_straat'];
$adm_huisnummer = $record['administraties_huisnr'];
$adm_postcode = $record['administraties_postcode'];
$adm_plaats = $record['administraties_plaats'];
$adm_telefoonnr = $record['administraties_telefoonnr'];
$adm_kvk = $record['administraties_kvk'];
$adm_btwnr = $record['administraties_btwnr'];
$adm_website = $record['administraties_website'];
$adm_email = $record['administraties_email'];
}
// indien het formulier verstuurd is
if($_SERVER['REQUEST_METHOD'] == 'POST') {
// overschrijf de standaardwaarden voor de waarden die ge-POST zijn
$naam = $_POST["adm_naam"];
$straat = $_POST["adm_straat"];
$huisnummer = $_POST["adm_huisnummer"];
$postcode = $_POST["adm_postcode"];
$plaats = $_POST["adm_plaats"];
$telefoonnr = $_POST["adm_telefoonnr"];
$kvk = $_POST["adm_kvk"];
$btwnr = $_POST["adm_btwnr"];
$website = $_POST["adm_website"];
$email = $_POST["adm_email"];
// valideer de ingevulde gegevens
$errors = validate($naam, $email);
// als er dan geen fouten zijn ga na het opslaan naar index.php
if(!count($errors)) {
//gegevens opslaan in de database
$stmt = $dbh->prepare($query03);
if (!empty($_GET['id'])) {
$stmt->bindParam(':administraties_id',$adm_id);
}
$stmt->bindParam(':administraties_naam',$naam);
$stmt->bindParam(':administraties_straat',$straat);
$stmt->bindParam(':administraties_huisnr',$huisnummer);
$stmt->bindParam(':administraties_postcode',$postcode);
$stmt->bindParam(':administraties_plaats',$plaats);
$stmt->bindParam(':administraties_telefoonnr',$telefoonnr);
$stmt->bindParam(':administraties_kvk',$kvk);
$stmt->bindParam(':administraties_btwnr',$btwnr);
$stmt->bindParam(':administraties_website',$website);
$stmt->bindParam(':administraties_email',$email);
$stmt->execute();
header('Location: '.$link1);
exit;
}
}
?><!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>administraties0</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
<?php
if(count($errors)) {
echo '<ul id="errors">';
foreach($errors as $error) {
echo '<li>' . $error . '</li>';
}
echo '</ul>';
}
?>
<table class="empty">
<tr>
<td width="250" class="vak1">
</td>
<td class="programmadeel">
<form action="" method="post">
<h1><B>Administratie (<?php if (empty($_GET['id'])) {echo "Nieuw";} else { echo $adm_id; } ?>)<B></h1>
<table>
<tr><td>
<div class="pf">Naam : </div></td><td><input type="text" id="adm_naam" name="adm_naam" tabindex="1" size="107" value="<?php echo $adm_naam; ?>">
</td></tr><tr><td>
<div class="pf">Straat + Huisnummer : </div></td><td><input type="text" id="adm_straat" name="adm_straat" tabindex="2" size="90" value="<?php echo $adm_straat; ?>">
<input type="text" id="adm_huisnummer" name="adm_huisnummer" tabindex="3" size="10" value="<?php echo $adm_huisnummer; ?>">
</td></tr><tr><td>
<div class="pf">Postcode + Plaats : </div></td><td><input type="text" id="adm_postcode" name="adm_postcode" tabindex="4" size="7" value="<?php echo $adm_postcode; ?>">
<input type="text" id="adm_Plaats" name="adm_plaats" tabindex="5" size="93" value="<?php echo $adm_plaats; ?>">
</td></tr><tr><td>
<div class="pf">Telefoonnr : </div></td><td><input type="text" id="adm_telefoonnr" name="adm_telefoonnr" tabindex="6" size="20" value="<?php echo $adm_telefoonnr; ?>">
</td></tr><tr><td>
<div class="pf">KvK : </div></td><td><input type="text" id="adm_kvk" name="adm_kvk" tabindex="7" size="20" value="<?php echo $adm_kvk; ?>">
</td></tr><tr><td>
<div class="pf">BTWnr : </div></td><td><input type="text" id="adm_btwnr" name="adm_btwnr" tabindex="8" size="20" value="<?php echo $adm_btwnr; ?>">
</td></tr><tr><td>
<div class="pf">Website : </div></td><td><input type="text" id="adm_website" name="adm_website" tabindex="9" size="107" value="<?php echo $adm_website; ?>">
</td></tr><tr><td>
<div class="pf">e-mail : </div></td><td><input type="text" id="adm_email" name="adm_email" tabindex="10" size="107" value="<?php echo $adm_email; ?>">
</td></tr>
</table>
<table>
<tr><td>
<input type="reset" value="Velden legen" id="knop_reset" name="knop_reset" alt="Alle velden terug zetten in de default waarde" tabindex="11">
<input type="submit" value="Bewaren" id="knop_opslaan" name="knop_opslaan" alt="Administratie opslaan" tabindex="12">
</table>
</form>
</td>
</tr>
</table>
</body>
</html>
include("databaseopenen.php");
// functie die de formuliervelden valideert en foutmeldingen aanmaakt
function validate($naam, $email) {
$errors = array();
// validatieregels voor de naam
if(strlen($naam) < 1) {
$errors[] = 'U heeft geen naam ingevuld.';
}
// validatieregels voor het mailadres
if(!strlen($email)) :
$errors[] = 'U heeft geen email adres ingevuld.';
elseif(!filter_var($email, FILTER_VALIDATE_EMAIL)):
$errors[] = 'U heeft een ongeldig email adres ingevuld.';
endif;
// geef de array met foutmeldingen terug
return $errors;
}
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$errors = array();
if (empty($_GET['id'])) {
// initialisatie van de variabelen (zorgt er voor dat variabelen altijd bestaan en een standaardwaarde hebben).
$link1 = "index.php";
$query03 = "INSERT INTO tabel_administraties (
administraties_naam, administraties_straat, administraties_huisnr, administraties_postcode, administraties_plaats, administraties_telefoonnr, administraties_kvk, administraties_btwnr, administraties_website, administraties_email
) VALUES (
:administraties_naam, :administraties_straat, :administraties_huisnr, :administraties_postcode, :administraties_plaats, :administraties_telefoonnr, :administraties_kvk, :administraties_btwnr, :administraties_website, :administraties_email
)";
$naam = '';
$straat = '';
$huisnummer = '';
$postcode = '';
$plaats = '';
$telefoonnr = '';
$kvk = '';
$btwnr = '';
$website = '';
$email = '';
} else {
$adm_id = $_GET['id'];
$link1 = "index.php?id=" . $adm_id;
$query02 = "SELECT * FROM tabel_administraties WHERE administraties_id = :administraties_id LIMIT 1";
$query03 = "UPDATE tabel_administraties
SET administraties_naam = :administraties_naam,
administraties_straat = :administraties_straat,
administraties_huisnr = :administraties_huisnr,
administraties_postcode = :administraties_postcode,
administraties_plaats = :administraties_plaats,
administraties_telefoonnr = :administraties_telefoonnr,
administraties_kvk = :administraties_kvk,
administraties_btwnr = :administraties_btwnr,
administraties_website = :administraties_website,
administraties_email = :administraties_email
WHERE administraties_id = :administraties_id";
//Dit kan alleen uitgevoerd worden als id is ingegeven bij de url
$stmt = $dbh->prepare($query02);
$stmt->bindParam(':administraties_id',$adm_id);
$stmt->execute();
//PDO::FETCH_ASSOC: returns an array indexed by column name as returned in your result set
$record = $stmt->fetch(PDO::FETCH_ASSOC);
$adm_naam = $record['administraties_naam'];
$adm_straat = $record['administraties_straat'];
$adm_huisnummer = $record['administraties_huisnr'];
$adm_postcode = $record['administraties_postcode'];
$adm_plaats = $record['administraties_plaats'];
$adm_telefoonnr = $record['administraties_telefoonnr'];
$adm_kvk = $record['administraties_kvk'];
$adm_btwnr = $record['administraties_btwnr'];
$adm_website = $record['administraties_website'];
$adm_email = $record['administraties_email'];
}
// indien het formulier verstuurd is
if($_SERVER['REQUEST_METHOD'] == 'POST') {
// overschrijf de standaardwaarden voor de waarden die ge-POST zijn
$naam = $_POST["adm_naam"];
$straat = $_POST["adm_straat"];
$huisnummer = $_POST["adm_huisnummer"];
$postcode = $_POST["adm_postcode"];
$plaats = $_POST["adm_plaats"];
$telefoonnr = $_POST["adm_telefoonnr"];
$kvk = $_POST["adm_kvk"];
$btwnr = $_POST["adm_btwnr"];
$website = $_POST["adm_website"];
$email = $_POST["adm_email"];
// valideer de ingevulde gegevens
$errors = validate($naam, $email);
// als er dan geen fouten zijn ga na het opslaan naar index.php
if(!count($errors)) {
//gegevens opslaan in de database
$stmt = $dbh->prepare($query03);
if (!empty($_GET['id'])) {
$stmt->bindParam(':administraties_id',$adm_id);
}
$stmt->bindParam(':administraties_naam',$naam);
$stmt->bindParam(':administraties_straat',$straat);
$stmt->bindParam(':administraties_huisnr',$huisnummer);
$stmt->bindParam(':administraties_postcode',$postcode);
$stmt->bindParam(':administraties_plaats',$plaats);
$stmt->bindParam(':administraties_telefoonnr',$telefoonnr);
$stmt->bindParam(':administraties_kvk',$kvk);
$stmt->bindParam(':administraties_btwnr',$btwnr);
$stmt->bindParam(':administraties_website',$website);
$stmt->bindParam(':administraties_email',$email);
$stmt->execute();
header('Location: '.$link1);
exit;
}
}
?><!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>administraties0</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
<?php
if(count($errors)) {
echo '<ul id="errors">';
foreach($errors as $error) {
echo '<li>' . $error . '</li>';
}
echo '</ul>';
}
?>
<table class="empty">
<tr>
<td width="250" class="vak1">
</td>
<td class="programmadeel">
<form action="" method="post">
<h1><B>Administratie (<?php if (empty($_GET['id'])) {echo "Nieuw";} else { echo $adm_id; } ?>)<B></h1>
<table>
<tr><td>
<div class="pf">Naam : </div></td><td><input type="text" id="adm_naam" name="adm_naam" tabindex="1" size="107" value="<?php echo $adm_naam; ?>">
</td></tr><tr><td>
<div class="pf">Straat + Huisnummer : </div></td><td><input type="text" id="adm_straat" name="adm_straat" tabindex="2" size="90" value="<?php echo $adm_straat; ?>">
<input type="text" id="adm_huisnummer" name="adm_huisnummer" tabindex="3" size="10" value="<?php echo $adm_huisnummer; ?>">
</td></tr><tr><td>
<div class="pf">Postcode + Plaats : </div></td><td><input type="text" id="adm_postcode" name="adm_postcode" tabindex="4" size="7" value="<?php echo $adm_postcode; ?>">
<input type="text" id="adm_Plaats" name="adm_plaats" tabindex="5" size="93" value="<?php echo $adm_plaats; ?>">
</td></tr><tr><td>
<div class="pf">Telefoonnr : </div></td><td><input type="text" id="adm_telefoonnr" name="adm_telefoonnr" tabindex="6" size="20" value="<?php echo $adm_telefoonnr; ?>">
</td></tr><tr><td>
<div class="pf">KvK : </div></td><td><input type="text" id="adm_kvk" name="adm_kvk" tabindex="7" size="20" value="<?php echo $adm_kvk; ?>">
</td></tr><tr><td>
<div class="pf">BTWnr : </div></td><td><input type="text" id="adm_btwnr" name="adm_btwnr" tabindex="8" size="20" value="<?php echo $adm_btwnr; ?>">
</td></tr><tr><td>
<div class="pf">Website : </div></td><td><input type="text" id="adm_website" name="adm_website" tabindex="9" size="107" value="<?php echo $adm_website; ?>">
</td></tr><tr><td>
<div class="pf">e-mail : </div></td><td><input type="text" id="adm_email" name="adm_email" tabindex="10" size="107" value="<?php echo $adm_email; ?>">
</td></tr>
</table>
<table>
<tr><td>
<input type="reset" value="Velden legen" id="knop_reset" name="knop_reset" alt="Alle velden terug zetten in de default waarde" tabindex="11">
<input type="submit" value="Bewaren" id="knop_opslaan" name="knop_opslaan" alt="Administratie opslaan" tabindex="12">
</table>
</form>
</td>
</tr>
</table>
</body>
</html>
Gewijzigd op 04/09/2017 08:38:28 door Frits van Leeuwen
En ik durf te wedden dat jij na verloop van tijd ook verward zal raken.
En dat is inderdaad precies mijn punt.
ik zal het in overweging nemen.