Mailscript Mailt niet meer
Toch al ik het formulier heb ingevuld zegt hij wel "Uw email is ontvangen, deze nemen wij zo spoedig mogelijk in behandeling!"
Maar krijg niks in mij mailbox.
heb dit script al vaker zonder problemen gebruikt.
Dus snap het niet.
Het mailscript:
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
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
<?php
include 'phpscript.inc.php';
?>
<?php
// maakt verbinding met je MYsql
$conn = mysql_connect("localhost","ron","");
if (!$conn)
{
die('Could not connect: ' . mysql_error());
}
//Plaats hier alle data van je database uit je MYsql
mysql_select_db("kb_cadeau", $conn);
$sql="INSERT INTO gegevens (voornaam, toevoegsel, achternaam, adres, huisnummer, toevoeging, postcode, woonplaats, telefoonnummer, email, rekeninghouder, rekeningnummer, nkind1, geslachtkind1, geboorte1d, geboorte1m, geboorte1j, cadeau1)
VALUES ('$_POST[voornaam]','$_POST[toevoegsel]','$_POST[achternaam]','$_POST[adres]','$_POST[huisnummer]','$_POST[toevoeging]','$_POST[postcode]','$_POST[woonplaats]','$_POST[telefoonnummer]','$_POST[email]','$_POST[rekeninghouder]','$_POST[rekeningnummer]','$_POST[nkind1]','$_POST[geslachtkind1]','$_POST[geboorte1d]','$_POST[geboorte1m]','$_POST[geboorte1j]','$_POST[cadeau1]')";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>mailing script</title>
</head>
<body>
<?php
if(isset($_POST['email'])) {
// Vul hier het juiste e-mail en het onderwerp (subject) in
$email_to = "[email protected]";
$email_subject = "subject";
function died($fout) { ?>
<div>
<p>Let A.U.B op dat alle gegevens zijn ingegevult.</p>
<?php echo $fout ?>
<p><a href="Javascript:history.back()">terug</a></p></div>
<?php die();
}
//hier benoemen we alle velden met een array
// ## == moet aanwezig zijn
// -- == hoeft neit aanwezig te zijn
if(!isset($_POST['voornaam']) ||
!isset($_POST['toevoegsel']) ||
!isset($_POST['achternaam']) ||
!isset($_POST['adres']) ||
!isset($_POST['huisnummer']) ||
!isset($_POST['toevoeging']) ||
!isset($_POST['postcode']) ||
!isset($_POST['woonplaats']) ||
!isset($_POST['telefoonnummer']) ||
!isset($_POST['email']) ||
!isset($_POST['rekeninghouder']) ||
!isset($_POST['rekeningnummer']) ||
!isset($_POST['geslachtkind1']) ||
!isset($_POST['geboorte1d']) ||
!isset($_POST['geboorte1m']) ||
!isset($_POST['geboorte1j'])); {
$voornaam = $_POST['voornaam']; /* ## */
$toevoegsel = $_POST['toevoegsel']; /* -- */
$achternaam = $_POST['achternaam']; /* ## */
$adres = $_POST['adres']; /* ## */
$huisnummer = $_POST['huisnummer']; /* ## */
$toevoeging = $_POST['toevoeging']; /* -- */
$postcode = $_POST['postcode']; /* ## */
$woonplaats = $_POST['woonplaats']; /* ## */
$telefoon = $_POST['telefoonnummer']; /* ## */
$mail = $_POST['email']; /* ## */
$rekeningh = $_POST['rekeninghouder']; /* ## */
$rekeningn = $_POST['rekeningnummer']; /* ## */
$naamk1 = $_POST['nkind1']; /* -- */
$geslachtkind1 = $_POST['geslachtkind1']; /* -- */
$geboorte1d = $_POST['geboorte1d']; /* -- */
$geboorte1m = $_POST['geboorte1m']; /* -- */
$geboorte1j = $_POST['geboorte1j']; /* -- */
$cadeau = $_POST['cadeau1']; /* ## */
$fout_melding = "";
$email_ver = "^[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$";
if(!eregi($email_ver,$mail))
{
$fout_melding .= '<p>Vul een geldig <b>e-mail</b> in</p>';
}
// als er meerdere array de zelfde voorwaarde hebben kun je die onder 1 noemer plaatsen.
$naam_ver = "^[A-Z .'-]+$";
if(!eregi($naam_ver,$voornaam))
{
$fout_melding .= '<p>U bent uw <b>voornaam</b> of <b>voorletter</b> vergeten in te vullen.</P>';
}
if(!eregi($naam_ver,$woonplaats))
{
$fout_melding .= '<p>vul uw <b>woonplaats</b> in aub. </p>';
}
if(!eregi($naam_ver,$adres))
{
$fout_melding .= '<p>u <b>adres</b> klopt niet.</p>';
}
if(!eregi($naam_ver,$achternaam))
{
$fout_melding .= '<p>U bent uw <b>achternaam</b> vergeten in te vullen. </p>';
}
if(!eregi($naam_ver,$rekeningh))
{
$fout_melding .= '<p> <b>rekeninghouder</b> is onbekent of onjuist. </p>';
}
$postcode_ver = "^[A-Z0-9 .'-]+$";
if(!eregi($postcode_ver,$postcode))
{
$fout_melding .= '<p>vul een juiste <b>postcode</b> in A.U.B. </p>';
}
$nummer_ver = "^[0-9.'-]+$";
if(!eregi($nummer_ver,$huisnummer))
{
$fout_melding .= '<p><b>huisnummer</b> is onjuist.</p>';
}
if(!eregi($nummer_ver,$telefoon))
{
$fout_melding .= '<p>onjuist <b>telefoonnummer</b> ingevult.</p>';
}
if(!eregi($nummer_ver,$rekeningn))
{
$fout_melding .= '<p>onjuist <b>rekeningnummer</b> ingevult.</p>';
}
if(strlen($fout_melding) > 0) {
died($fout_melding);
}
}
$email_bericht = "klant gegevens.\n\n";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
}
$email_bericht .= "Voornaam: ".clean_string($voornaam)."\n";
$email_bericht .= "Toevoegsel: ".clean_string($toevoegsel)."\n";
$email_bericht .= "Achternaam: ".clean_string($achternaam)."\n";
$email_bericht .= "Adres: ".clean_string($adres)."\n";
$email_bericht .= "Huisnummer.: ".clean_string($huisnummer)."\n";
$email_bericht .= "HuisNRtoev.: ".clean_string($toevoeging)."\n";
$email_bericht .= "Postcode: ".clean_string($postcode)."\n";
$email_bericht .= "Woonplaats: ".clean_string($woonplaats)."\n";
$email_bericht .= "Telefoon nr.: ".clean_string($telefoon)."\n";
$email_bericht .= "E-mail.: ".clean_string($mail)."\n";
$email_bericht .= "Rekeninghouder: ".clean_string($rekeningh)."\n";
$email_bericht .= "Rekening nr.: ".clean_string($rekeningn)."\n";
$email_bericht .= "Naam kind: ".clean_string($naamk1)."\n";
$email_bericht .= "Geslacht van kind: ".clean_string($geslachtkind1)."\n";
$email_bericht .= "Geboorte dag van kind: ".clean_string($geboorte1d)."\n";
$email_bericht .= "Geboorte maand van kind: ".clean_string($geboorte1m)."\n";
$email_bericht .= "Geboorte jaar van kind: ".clean_string($geboorte1j)."\n";
$email_bericht .= "Gekozen cadeau: ".clean_string($cadeau)."\n";
$headers = 'From: '.$mail."\r\n".
'Reply-To: '.$email_to."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_bericht, $headers);
$headers = 'From: '.$email_to."\r\n".
'Reply-To: '.$email_to."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($mail, "Gratiskinderboeken.nl Bevestigingsmail", "Geachte heer/mevrouw \n \n Hartelijk dank voor uw bestelling bij Gratiskinderboeken.nl!\n \n Het kinderboekenpakket zal zo spoedig mogelijk worden verzonden.\n Heel veel plezier gewenstmet het pakket.\n \n Groeten,\n Het team van Gratiskinderboeken.nl", $headers);
?>
<div id="div_home_maat3">
<p> </p>
<p>Uw email is ontvangen, deze nemen wij zo spoedig mogelijk in behandeling!</p>
<p><a href="Javascript:history.back()">terug</a> </p>
</div>
<?php
}
?>
</body>
</html>
include 'phpscript.inc.php';
?>
<?php
// maakt verbinding met je MYsql
$conn = mysql_connect("localhost","ron","");
if (!$conn)
{
die('Could not connect: ' . mysql_error());
}
//Plaats hier alle data van je database uit je MYsql
mysql_select_db("kb_cadeau", $conn);
$sql="INSERT INTO gegevens (voornaam, toevoegsel, achternaam, adres, huisnummer, toevoeging, postcode, woonplaats, telefoonnummer, email, rekeninghouder, rekeningnummer, nkind1, geslachtkind1, geboorte1d, geboorte1m, geboorte1j, cadeau1)
VALUES ('$_POST[voornaam]','$_POST[toevoegsel]','$_POST[achternaam]','$_POST[adres]','$_POST[huisnummer]','$_POST[toevoeging]','$_POST[postcode]','$_POST[woonplaats]','$_POST[telefoonnummer]','$_POST[email]','$_POST[rekeninghouder]','$_POST[rekeningnummer]','$_POST[nkind1]','$_POST[geslachtkind1]','$_POST[geboorte1d]','$_POST[geboorte1m]','$_POST[geboorte1j]','$_POST[cadeau1]')";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>mailing script</title>
</head>
<body>
<?php
if(isset($_POST['email'])) {
// Vul hier het juiste e-mail en het onderwerp (subject) in
$email_to = "[email protected]";
$email_subject = "subject";
function died($fout) { ?>
<div>
<p>Let A.U.B op dat alle gegevens zijn ingegevult.</p>
<?php echo $fout ?>
<p><a href="Javascript:history.back()">terug</a></p></div>
<?php die();
}
//hier benoemen we alle velden met een array
// ## == moet aanwezig zijn
// -- == hoeft neit aanwezig te zijn
if(!isset($_POST['voornaam']) ||
!isset($_POST['toevoegsel']) ||
!isset($_POST['achternaam']) ||
!isset($_POST['adres']) ||
!isset($_POST['huisnummer']) ||
!isset($_POST['toevoeging']) ||
!isset($_POST['postcode']) ||
!isset($_POST['woonplaats']) ||
!isset($_POST['telefoonnummer']) ||
!isset($_POST['email']) ||
!isset($_POST['rekeninghouder']) ||
!isset($_POST['rekeningnummer']) ||
!isset($_POST['geslachtkind1']) ||
!isset($_POST['geboorte1d']) ||
!isset($_POST['geboorte1m']) ||
!isset($_POST['geboorte1j'])); {
$voornaam = $_POST['voornaam']; /* ## */
$toevoegsel = $_POST['toevoegsel']; /* -- */
$achternaam = $_POST['achternaam']; /* ## */
$adres = $_POST['adres']; /* ## */
$huisnummer = $_POST['huisnummer']; /* ## */
$toevoeging = $_POST['toevoeging']; /* -- */
$postcode = $_POST['postcode']; /* ## */
$woonplaats = $_POST['woonplaats']; /* ## */
$telefoon = $_POST['telefoonnummer']; /* ## */
$mail = $_POST['email']; /* ## */
$rekeningh = $_POST['rekeninghouder']; /* ## */
$rekeningn = $_POST['rekeningnummer']; /* ## */
$naamk1 = $_POST['nkind1']; /* -- */
$geslachtkind1 = $_POST['geslachtkind1']; /* -- */
$geboorte1d = $_POST['geboorte1d']; /* -- */
$geboorte1m = $_POST['geboorte1m']; /* -- */
$geboorte1j = $_POST['geboorte1j']; /* -- */
$cadeau = $_POST['cadeau1']; /* ## */
$fout_melding = "";
$email_ver = "^[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$";
if(!eregi($email_ver,$mail))
{
$fout_melding .= '<p>Vul een geldig <b>e-mail</b> in</p>';
}
// als er meerdere array de zelfde voorwaarde hebben kun je die onder 1 noemer plaatsen.
$naam_ver = "^[A-Z .'-]+$";
if(!eregi($naam_ver,$voornaam))
{
$fout_melding .= '<p>U bent uw <b>voornaam</b> of <b>voorletter</b> vergeten in te vullen.</P>';
}
if(!eregi($naam_ver,$woonplaats))
{
$fout_melding .= '<p>vul uw <b>woonplaats</b> in aub. </p>';
}
if(!eregi($naam_ver,$adres))
{
$fout_melding .= '<p>u <b>adres</b> klopt niet.</p>';
}
if(!eregi($naam_ver,$achternaam))
{
$fout_melding .= '<p>U bent uw <b>achternaam</b> vergeten in te vullen. </p>';
}
if(!eregi($naam_ver,$rekeningh))
{
$fout_melding .= '<p> <b>rekeninghouder</b> is onbekent of onjuist. </p>';
}
$postcode_ver = "^[A-Z0-9 .'-]+$";
if(!eregi($postcode_ver,$postcode))
{
$fout_melding .= '<p>vul een juiste <b>postcode</b> in A.U.B. </p>';
}
$nummer_ver = "^[0-9.'-]+$";
if(!eregi($nummer_ver,$huisnummer))
{
$fout_melding .= '<p><b>huisnummer</b> is onjuist.</p>';
}
if(!eregi($nummer_ver,$telefoon))
{
$fout_melding .= '<p>onjuist <b>telefoonnummer</b> ingevult.</p>';
}
if(!eregi($nummer_ver,$rekeningn))
{
$fout_melding .= '<p>onjuist <b>rekeningnummer</b> ingevult.</p>';
}
if(strlen($fout_melding) > 0) {
died($fout_melding);
}
}
$email_bericht = "klant gegevens.\n\n";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
}
$email_bericht .= "Voornaam: ".clean_string($voornaam)."\n";
$email_bericht .= "Toevoegsel: ".clean_string($toevoegsel)."\n";
$email_bericht .= "Achternaam: ".clean_string($achternaam)."\n";
$email_bericht .= "Adres: ".clean_string($adres)."\n";
$email_bericht .= "Huisnummer.: ".clean_string($huisnummer)."\n";
$email_bericht .= "HuisNRtoev.: ".clean_string($toevoeging)."\n";
$email_bericht .= "Postcode: ".clean_string($postcode)."\n";
$email_bericht .= "Woonplaats: ".clean_string($woonplaats)."\n";
$email_bericht .= "Telefoon nr.: ".clean_string($telefoon)."\n";
$email_bericht .= "E-mail.: ".clean_string($mail)."\n";
$email_bericht .= "Rekeninghouder: ".clean_string($rekeningh)."\n";
$email_bericht .= "Rekening nr.: ".clean_string($rekeningn)."\n";
$email_bericht .= "Naam kind: ".clean_string($naamk1)."\n";
$email_bericht .= "Geslacht van kind: ".clean_string($geslachtkind1)."\n";
$email_bericht .= "Geboorte dag van kind: ".clean_string($geboorte1d)."\n";
$email_bericht .= "Geboorte maand van kind: ".clean_string($geboorte1m)."\n";
$email_bericht .= "Geboorte jaar van kind: ".clean_string($geboorte1j)."\n";
$email_bericht .= "Gekozen cadeau: ".clean_string($cadeau)."\n";
$headers = 'From: '.$mail."\r\n".
'Reply-To: '.$email_to."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_bericht, $headers);
$headers = 'From: '.$email_to."\r\n".
'Reply-To: '.$email_to."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($mail, "Gratiskinderboeken.nl Bevestigingsmail", "Geachte heer/mevrouw \n \n Hartelijk dank voor uw bestelling bij Gratiskinderboeken.nl!\n \n Het kinderboekenpakket zal zo spoedig mogelijk worden verzonden.\n Heel veel plezier gewenstmet het pakket.\n \n Groeten,\n Het team van Gratiskinderboeken.nl", $headers);
?>
<div id="div_home_maat3">
<p> </p>
<p>Uw email is ontvangen, deze nemen wij zo spoedig mogelijk in behandeling!</p>
<p><a href="Javascript:history.back()">terug</a> </p>
</div>
<?php
}
?>
</body>
</html>
het formulier:
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
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
<div id="order_content_frame">
<div id="order_links"></div>
<div id="order_content">
<form action="verzend.php" method="POST" name="aanmelden" id="aanmelden">
<div id="order_top"><h2><?php echo $row_Ophalen_content['titel1']; ?></h2></div>
<div id="order_text">
<div id="order_img"><img src="<?php echo $map.$_GET["action"],".",jpg;?>" width="163" height="163" border="0" /></div>
<table width="470px" class="main_tekstvak_formulier">
<tr>
<td width="21%">Naam:</td>
<td width="15%"><input name="voornaam" type="text" id="voornaam" size="12" /></td>
<td width="19%">Tussenvoegsel:</td>
<td width="45%"><input name="toevoegsel" type="text" id="toevoegsel" size="8" /></td>
</tr>
<tr>
<td>Achternaam:</td>
<td><input name="achternaam" type="text" id="achternaam" size="12" /></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Adres:</td>
<td><input name="adres" type="text" id="adres" size="12" /></td>
<td>Huisnummer:</td>
<td><input name="huisnummer" type="text" id="huisnummer" size="4" />
<input name="toevoeging" type="text" id="toevoeging" size="4" /></td>
</tr>
<tr>
<td>Postcode:</td>
<td><input name="postcode" type="text" id="postcode" size="12" /></td>
<td>Woonplaats:</td>
<td><input name="woonplaats" type="text" id="woonplaats" size="12" /></td>
</tr>
<tr>
<td>Telefoonnummer:</td>
<td><input name="telefoonnummer" type="text" id="telefoonnummer" size="12" /></td>
<td>E-mail:</td>
<td><input name="email" type="text" id="email" size="12" /></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Naam kind:</td>
<td><input name="nkind1" type="text" id="nkind1" size="12" /></td>
<td>Geslacht:</td>
<td><input type="radio" checked="checked" value="man" name="geslachtkind1">Man
<input type="radio" value="vrouw" name="geslachtkind1">Vrouw
</td>
</tr>
<tr>
<td>Geboortedatum:</td>
<td colspan="3"><select name="geboorte1d" id="geboorte1d">
<option selected="selected">1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
<option>8</option>
<option>9</option>
<option>10</option>
<option>11</option>
<option>12</option>
<option>13</option>
<option>14</option>
<option>15</option>
<option>16</option>
<option>17</option>
<option>18</option>
<option>19</option>
<option>20</option>
<option>21</option>
<option>22</option>
<option>23</option>
<option>24</option>
<option>25</option>
<option>26</option>
<option>27</option>
<option>28</option>
<option>29</option>
<option>30</option>
<option>31</option>
</select>
/
<select name="geboorte1m" id="geboorte1m">
<option selected="selected">1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
<option>8</option>
<option>9</option>
<option>10</option>
<option>11</option>
<option>12</option>
</select>
/
<select name="geboorte1j" id="geboorte1j">
<option>1990</option>
<option>1991</option>
<option>1992</option>
<option>1993</option>
<option>1994</option>
<option>1995</option>
<option>1996</option>
<option>1997</option>
<option>1998</option>
<option>1999</option>
<option>2000</option>
<option>2001</option>
<option>2002</option>
<option>2003</option>
<option>2004</option>
<option>2005</option>
<option>2006</option>
<option>2007</option>
<option>2008</option>
<option>2009</option>
</select></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Rekeninghouder:</td>
<td><input name="rekeninghouder" type="text" id="rekeninghouder" size="12" /></td>
<td>Rekeningnummer:</td>
<td><input name="rekeningnummer" type="text" id="rekeningnummer" size="12" /></td>
</tr>
<tr>
<td><input name="cadeau1" id="cadeau1" type="hidden" value="1" /></td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td colspan="4">
<input type="checkbox" name="checkbox2" id="checkbox2" />Ja, ik ga akkoord met de algemene voorwaarden
</td>
</tr>
<tr>
<td colspan="4">
<input type="checkbox" name="checkbox" id="checkbox" />Ja, ik ga akkoord met de afschrijving van mijn rekeningnummer
</td>
</tr>
</table>
</td>
<div id="order_buttons">
<div id="order_vorige"><a href="Javascript:history.back()"><img src="img/button_vorige.jpg" width="63" height="30" align="left" border="0" /></a></div>
<div id="order_bestel"><input name="aanmelden" type=image value="Submit" src="img/button_bestel.jpg" align="right" /></div>
</div>
</div>
<div id="order_footer"></div>
</form>
</div>
<div id="order_rechts"></div>
</div>
zie ik gewoon iets heel doms over het hoofd??
<div id="order_links"></div>
<div id="order_content">
<form action="verzend.php" method="POST" name="aanmelden" id="aanmelden">
<div id="order_top"><h2><?php echo $row_Ophalen_content['titel1']; ?></h2></div>
<div id="order_text">
<div id="order_img"><img src="<?php echo $map.$_GET["action"],".",jpg;?>" width="163" height="163" border="0" /></div>
<table width="470px" class="main_tekstvak_formulier">
<tr>
<td width="21%">Naam:</td>
<td width="15%"><input name="voornaam" type="text" id="voornaam" size="12" /></td>
<td width="19%">Tussenvoegsel:</td>
<td width="45%"><input name="toevoegsel" type="text" id="toevoegsel" size="8" /></td>
</tr>
<tr>
<td>Achternaam:</td>
<td><input name="achternaam" type="text" id="achternaam" size="12" /></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Adres:</td>
<td><input name="adres" type="text" id="adres" size="12" /></td>
<td>Huisnummer:</td>
<td><input name="huisnummer" type="text" id="huisnummer" size="4" />
<input name="toevoeging" type="text" id="toevoeging" size="4" /></td>
</tr>
<tr>
<td>Postcode:</td>
<td><input name="postcode" type="text" id="postcode" size="12" /></td>
<td>Woonplaats:</td>
<td><input name="woonplaats" type="text" id="woonplaats" size="12" /></td>
</tr>
<tr>
<td>Telefoonnummer:</td>
<td><input name="telefoonnummer" type="text" id="telefoonnummer" size="12" /></td>
<td>E-mail:</td>
<td><input name="email" type="text" id="email" size="12" /></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Naam kind:</td>
<td><input name="nkind1" type="text" id="nkind1" size="12" /></td>
<td>Geslacht:</td>
<td><input type="radio" checked="checked" value="man" name="geslachtkind1">Man
<input type="radio" value="vrouw" name="geslachtkind1">Vrouw
</td>
</tr>
<tr>
<td>Geboortedatum:</td>
<td colspan="3"><select name="geboorte1d" id="geboorte1d">
<option selected="selected">1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
<option>8</option>
<option>9</option>
<option>10</option>
<option>11</option>
<option>12</option>
<option>13</option>
<option>14</option>
<option>15</option>
<option>16</option>
<option>17</option>
<option>18</option>
<option>19</option>
<option>20</option>
<option>21</option>
<option>22</option>
<option>23</option>
<option>24</option>
<option>25</option>
<option>26</option>
<option>27</option>
<option>28</option>
<option>29</option>
<option>30</option>
<option>31</option>
</select>
/
<select name="geboorte1m" id="geboorte1m">
<option selected="selected">1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
<option>8</option>
<option>9</option>
<option>10</option>
<option>11</option>
<option>12</option>
</select>
/
<select name="geboorte1j" id="geboorte1j">
<option>1990</option>
<option>1991</option>
<option>1992</option>
<option>1993</option>
<option>1994</option>
<option>1995</option>
<option>1996</option>
<option>1997</option>
<option>1998</option>
<option>1999</option>
<option>2000</option>
<option>2001</option>
<option>2002</option>
<option>2003</option>
<option>2004</option>
<option>2005</option>
<option>2006</option>
<option>2007</option>
<option>2008</option>
<option>2009</option>
</select></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Rekeninghouder:</td>
<td><input name="rekeninghouder" type="text" id="rekeninghouder" size="12" /></td>
<td>Rekeningnummer:</td>
<td><input name="rekeningnummer" type="text" id="rekeningnummer" size="12" /></td>
</tr>
<tr>
<td><input name="cadeau1" id="cadeau1" type="hidden" value="1" /></td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td colspan="4">
<input type="checkbox" name="checkbox2" id="checkbox2" />Ja, ik ga akkoord met de algemene voorwaarden
</td>
</tr>
<tr>
<td colspan="4">
<input type="checkbox" name="checkbox" id="checkbox" />Ja, ik ga akkoord met de afschrijving van mijn rekeningnummer
</td>
</tr>
</table>
</td>
<div id="order_buttons">
<div id="order_vorige"><a href="Javascript:history.back()"><img src="img/button_vorige.jpg" width="63" height="30" align="left" border="0" /></a></div>
<div id="order_bestel"><input name="aanmelden" type=image value="Submit" src="img/button_bestel.jpg" align="right" /></div>
</div>
</div>
<div id="order_footer"></div>
</form>
</div>
<div id="order_rechts"></div>
</div>
zie ik gewoon iets heel doms over het hoofd??
Gewijzigd op 01/01/1970 01:00:00 door Ron
Haal de @ tekens eens weg voor @mail en check de foutmeldingen.
krijg nu:
Code (php)
1
Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\wamp\www\php5boek\test_speelgoedgratis.nl\verzend.php on line 171
Maar als ik hem dan "live" gooi heb ik dat probleem niet meer toch?
zal ondertussen is googlen voor een oplossing. Thx John in iedergeval :)
inderdaad maar wellicht een andere foutmelding van een falende smtp/mailserver op je live omgeving. Het @ onderdukt foutmeldingen.
Heb even rond gegoogled. Maar daar wordt me aangeraden om de smtp/mailserver aan te passen via me localhost files. Maar nu test ik net een oudere website. waar ik dit script ook voor gebruik. En daar heb ik dan weer niet de error. dat ik geen mail binnen krijg.
nouwja, mebee ga ik is kijken hoe het zit als ie ook niet mailt als hij live staat.
"live" mailt hij waarschijnlijk wel,, want daar heb je andere instellingen.
maar heb nu een ander probleem er mee namelijk.
Hij pakt de voorwaarde prima, die er in zijn gezet. Alleen het maakt niet of dat de voorwaarde wel of niet ingevult zijn of dat er een fout is. Alles komt zoiezo in de database. En dat heb ik liever niet, want dan krijg je natuurlijk dubble post als mensen het alsnog aanpassen na de foutmelding.
heb nog een kleine aanpassing er ingezet, omdat hij anders gewoon helemaal niets er in laden "soms vergeet ej wel eens wat" met betrekking van het script hier boven. Voor de rest geen aanpassingen:
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
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
<?$conn = mysql_connect("localhost","ron","");
if (!$conn)
{
die('Could not connect: ' . mysql_error());
}
//Plaats hier alle data van je database uit je MYsql
mysql_select_db("kb_cadeau", $conn);
$sql="INSERT INTO gegevens (
voornaam,
toevoegsel,
achternaam,
adres,
huisnummer,
toevoeging,
postcode,
woonplaats,
telefoonnummer,
email,
rekeninghouder,
rekeningnummer,
nkind1,
geslachtkind1,
geboorte1d,
geboorte1m,
geboorte1j,
cadeau1
)
VALUES (
'$_POST[voornaam]',
'$_POST[toevoegsel]',
'$_POST[achternaam]',
'$_POST[adres]',
'$_POST[huisnummer]',
'$_POST[toevoeging]',
'$_POST[postcode]',
'$_POST[woonplaats]',
'$_POST[telefoonnummer]',
'$_POST[email]',
'$_POST[rekeninghouder]',
'$_POST[rekeningnummer]',
'$_POST[nkind1]',
'$_POST[geslachtkind1]',
'$_POST[geboorte1d]',
'$_POST[geboorte1m]',
'$_POST[geboorte1j]',
'$_POST[cadeau1]')";
if (!mysql_query($sql,$conn))
{
die('Error: ' . mysql_error());
}
mysql_close($conn) ?>
if (!$conn)
{
die('Could not connect: ' . mysql_error());
}
//Plaats hier alle data van je database uit je MYsql
mysql_select_db("kb_cadeau", $conn);
$sql="INSERT INTO gegevens (
voornaam,
toevoegsel,
achternaam,
adres,
huisnummer,
toevoeging,
postcode,
woonplaats,
telefoonnummer,
email,
rekeninghouder,
rekeningnummer,
nkind1,
geslachtkind1,
geboorte1d,
geboorte1m,
geboorte1j,
cadeau1
)
VALUES (
'$_POST[voornaam]',
'$_POST[toevoegsel]',
'$_POST[achternaam]',
'$_POST[adres]',
'$_POST[huisnummer]',
'$_POST[toevoeging]',
'$_POST[postcode]',
'$_POST[woonplaats]',
'$_POST[telefoonnummer]',
'$_POST[email]',
'$_POST[rekeninghouder]',
'$_POST[rekeningnummer]',
'$_POST[nkind1]',
'$_POST[geslachtkind1]',
'$_POST[geboorte1d]',
'$_POST[geboorte1m]',
'$_POST[geboorte1j]',
'$_POST[cadeau1]')";
if (!mysql_query($sql,$conn))
{
die('Error: ' . mysql_error());
}
mysql_close($conn) ?>
vergeet ik ergen een afsluiting? of een ergens dat ie niet moet posten als er niet aan de voorwaarde wordt voldaan. Want kijk er zelf klaarblijkelijk overheen
gaat zo te zien mis bij de values $_POST(zie higlighting)
Doe eens wat tegen SQL injection. Je script is zo lek als een zeef. Dus pas op alle POST, GET, COOKIE -variabelen in je query de functie: mysql_real_escape_string() toe.
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
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
<?php
$sql="INSERT INTO gegevens (
voornaam,
toevoegsel,
achternaam,
adres,
huisnummer,
toevoeging,
postcode,
woonplaats,
telefoonnummer,
email,
rekeninghouder,
rekeningnummer,
nkind1,
geslachtkind1,
geboorte1d,
geboorte1m,
geboorte1j,
cadeau1
)
VALUES (
'".mysql_real_escape_string($_POST['voornaam'])."',
'".mysql_real_escape_string($_POST['toevoegsel'])."',
'".mysql_real_escape_string($_POST['achternaam'])."',
'".mysql_real_escape_string($_POST['adres'])."',
'".mysql_real_escape_string($_POST['huisnummer'])."',
'".mysql_real_escape_string($_POST['toevoeging'])."',
'".mysql_real_escape_string($_POST['postcode'])."',
'".mysql_real_escape_string($_POST['woonplaats'])."',
'".mysql_real_escape_string($_POST['telefoonnummer'])."',
'".mysql_real_escape_string($_POST['email'])."',
'".mysql_real_escape_string($_POST['rekeninghouder'])."',
'".mysql_real_escape_string($_POST['rekeningnummer'])."',
'".mysql_real_escape_string($_POST['nkind1'])."',
'".mysql_real_escape_string($_POST['geslachtkind1'])."',
'".mysql_real_escape_string($_POST['geboorte1d'])."',
'".mysql_real_escape_string($_POST['geboorte1m'])."',
'".mysql_real_escape_string($_POST['geboorte1j'])."',
'".mysql_real_escape_string($_POST['cadeau1'])."')";
?>
$sql="INSERT INTO gegevens (
voornaam,
toevoegsel,
achternaam,
adres,
huisnummer,
toevoeging,
postcode,
woonplaats,
telefoonnummer,
email,
rekeninghouder,
rekeningnummer,
nkind1,
geslachtkind1,
geboorte1d,
geboorte1m,
geboorte1j,
cadeau1
)
VALUES (
'".mysql_real_escape_string($_POST['voornaam'])."',
'".mysql_real_escape_string($_POST['toevoegsel'])."',
'".mysql_real_escape_string($_POST['achternaam'])."',
'".mysql_real_escape_string($_POST['adres'])."',
'".mysql_real_escape_string($_POST['huisnummer'])."',
'".mysql_real_escape_string($_POST['toevoeging'])."',
'".mysql_real_escape_string($_POST['postcode'])."',
'".mysql_real_escape_string($_POST['woonplaats'])."',
'".mysql_real_escape_string($_POST['telefoonnummer'])."',
'".mysql_real_escape_string($_POST['email'])."',
'".mysql_real_escape_string($_POST['rekeninghouder'])."',
'".mysql_real_escape_string($_POST['rekeningnummer'])."',
'".mysql_real_escape_string($_POST['nkind1'])."',
'".mysql_real_escape_string($_POST['geslachtkind1'])."',
'".mysql_real_escape_string($_POST['geboorte1d'])."',
'".mysql_real_escape_string($_POST['geboorte1m'])."',
'".mysql_real_escape_string($_POST['geboorte1j'])."',
'".mysql_real_escape_string($_POST['cadeau1'])."')";
?>
probeer t zo eens (PLUS die tips van Aar natuurlijk)
edit: niet al die mysql_real_escape_string() 's zijn nodig(bij selectboxes niet) maar ga niet alles nalopen...
Gewijzigd op 01/01/1970 01:00:00 door koen
Ik zou opnieuw beginnen als ik jouw was.
Heb een beginnetje voor je gemaakt.
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
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
<?PHP
# Errors weergeven
error_reporting(E_ALL);
ini_set('display_errors', 1);
# Connectie maken met de database
require_once 'connect_DB.php';
# Error is false
$Error = false;
# Array voor messages
$Message = array();
# Kijken of er gepost wordt
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
# Kijken of voornaam leeg is
if(empty($_POST['voornaam']))
{
# Naam is niet ingevuld
$Message[] = 'Vul A.U.B een naam in.';
# Error is true
$Error = true;
}
# Kijken of toevoegsel is ingevuld
# Hier hoeven we geen error = true te doen omdat hij leeg of ingevuld mag zijn, dus maken we een variable aan
if(empty($_POST['toevoegsel']))
{
# Toevoegsel is ingevuld, variable aanmaken
$Toevoegsel = $_POST['toevoegsel'];
}
else
{
# Toevoegsel is niet ingevuld, variable aanmaken
$Toevoegsel = '';
}
# Kijken of error false is
if($Error == false)
{
# Query uitvoeren
$Query =
"
INSERT INTO
gegevens
(
voornaam,
toevoegsel
)
VALUES
(
'".mysql_real_escape_string($_POST['voornaam'])."'
'".mysql_real_escape_string($Toevoegsel)."'
)
";
# Resultaat van query
$Result = mysql_query($Query);
# Kijken of de query is gelukt
if(!$Result)
{
# Fout in query
$Message[] = 'Er is een fout opgetreden, fout is: '.mysql_error();
}
else
{
# Alles is ingevuld
$Message[] = 'U heeft alles succesvol ingevuld.';
}
}
}
?>
# Errors weergeven
error_reporting(E_ALL);
ini_set('display_errors', 1);
# Connectie maken met de database
require_once 'connect_DB.php';
# Error is false
$Error = false;
# Array voor messages
$Message = array();
# Kijken of er gepost wordt
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
# Kijken of voornaam leeg is
if(empty($_POST['voornaam']))
{
# Naam is niet ingevuld
$Message[] = 'Vul A.U.B een naam in.';
# Error is true
$Error = true;
}
# Kijken of toevoegsel is ingevuld
# Hier hoeven we geen error = true te doen omdat hij leeg of ingevuld mag zijn, dus maken we een variable aan
if(empty($_POST['toevoegsel']))
{
# Toevoegsel is ingevuld, variable aanmaken
$Toevoegsel = $_POST['toevoegsel'];
}
else
{
# Toevoegsel is niet ingevuld, variable aanmaken
$Toevoegsel = '';
}
# Kijken of error false is
if($Error == false)
{
# Query uitvoeren
$Query =
"
INSERT INTO
gegevens
(
voornaam,
toevoegsel
)
VALUES
(
'".mysql_real_escape_string($_POST['voornaam'])."'
'".mysql_real_escape_string($Toevoegsel)."'
)
";
# Resultaat van query
$Result = mysql_query($Query);
# Kijken of de query is gelukt
if(!$Result)
{
# Fout in query
$Message[] = 'Er is een fout opgetreden, fout is: '.mysql_error();
}
else
{
# Alles is ingevuld
$Message[] = 'U heeft alles succesvol ingevuld.';
}
}
}
?>
En om de message te laten zien gebruik je:
Code (php)
Dit kan je overal neerzetten waar jij maar wilt.
Als je nou een bestandje aanmaakt die connect_DB.php heet en daar je Database gegevens inzet dan hoef je de code niet steeds weer neer te zetten.
Je gebruikt dan gewoon: require_once 'connect_DB'; om connectie met je database te maken.
Gebruik mysql_real_escape_string om SQL Injection tegen te gaan
Om een bericht in de array te proppen gebruik je: $Message[] = 'Jouw bericht';
Verder lees de oranje text en succes verder !
Edit:
Maak geen onnodige variable's aan.
[Edit2]
Sorry, deel van de code was ineens weg.
Maak geen onnodige variable's aan.
[Edit2]
Sorry, deel van de code was ineens weg.
Gewijzigd op 01/01/1970 01:00:00 door Mr.Ark
Erg bedankt voor de hulp.
ga het zo testen, ben even voor de functie die aar heeft gegeven, bij aan het lezen. (ben nog niet zo heel lang met php bezig).
oef, snelle reactie allemaal :-)
ga even aan de slag met wat me is gegeven, hoop dat ik er uit kom :-)
moet dat niet
zijn?
en die mysql_real_escape_string. Is dat echt alles wat je hoeft te doen.
Leest net dat het tegen fouten is. maar snap nog niet helemaal wat het presies doet.
Gewijzigd op 01/01/1970 01:00:00 door ron
aah, stom, te snel gelezen, sorry :-) en bedankt voor de link!
aah, stom, te snel gelezen, sorry :-) en bedankt voor de link!
of nu moet het een cijfer zijn.
Houd er rekening mee dat je voor cijfers niet mysql_real_escape_string gebruikt maar: Gewijzigd op 01/01/1970 01:00:00 door Mr.Ark
Raak zoiezo beetje weg kwijt en zou (als je nog tijd hebt) iets meer info over het script wat je me hebt gegeven willen :-)
Ik heb de aanpassingen doorgevoert. En het werkt nu.
(snap dan ook niet waarom ik geen mysql_real_escape_string mag gebruiken voor cijvers (in mij geval geboorte datums) want werkt er wel gewoon mee.
En waar moet ik de plaatsen dan?
Als vervanging voor:
bij de VALUES.
of bij de
Code (php)
Daarnaast vroeg ik het me af of ik net zoals in het "oude" script wat ik dus eerst gebruikte, de zelfde waarde weer kan vragen voor bijvoorbeeld een e-mail.
Code (php)
want nu controleerd hij echt specifiek alleen of het andwoord niet leeg is.
Maar kunnen mensen duss gewoon bij e-mail, zomaar wat invullen.
vind de structeur en logica wel erg fijn van je script btw :)
gebruik je voor tekstvelden waar tekst in gezet word.(de post van dat veld)
de (int) gebruik je voor de velden waar alleen nummers gebruikt mogen worden.
bij een <select> is het niet broodnodig, want daar typ je niks in...
allemaal ter preventie van sql injectie
Gewijzigd op 01/01/1970 01:00:00 door koen
okey, maar hoe maak je dan bijvoorbeeld voor een postcode, de combinati van tekst met cijvers?
dan gebruik je een mysql_real_escape_string..
ron schreef op 19.01.2010 12:22:
okey, maar hoe maak je dan bijvoorbeeld voor een postcode, de combinati van tekst met cijvers?
2 velden?
1 met cijfers bijvoorbeeld: 1337
1 met letters bijvoorbeeld: PH
Edit:
Type fout, reageer ergens op wat er niet staat -_-
[Edit2]
Ho !, hier ga je de fout in, wat nou als er in de select een leeg veld zit zonder waarde/value? Dan gaat het wel mis.
Bijvoorbeeld als je hebt: - Selecteer veld -
Controleer dus ook gewoon de select field.
[Edit3]
Waarom wil je dat hebben?, je gebruikt hem maar 1 keer zo te zien.
Type fout, reageer ergens op wat er niet staat -_-
[Edit2]
Quote:
bij een <select> is het niet broodnodig, want daar typ je niks in...
Ho !, hier ga je de fout in, wat nou als er in de select een leeg veld zit zonder waarde/value? Dan gaat het wel mis.
Bijvoorbeeld als je hebt: - Selecteer veld -
Controleer dus ook gewoon de select field.
[Edit3]
Quote:
Daarnaast vroeg ik het me af of ik net zoals in het "oude" script wat ik dus eerst gebruikte, de zelfde waarde weer kan vragen voor bijvoorbeeld een e-mail.
Waarom wil je dat hebben?, je gebruikt hem maar 1 keer zo te zien.
Gewijzigd op 01/01/1970 01:00:00 door Mr.Ark