contact 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
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
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
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link href="style.css" rel="stylesheet" type="text/css" />
<title>Contact Formulier door Thijs</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="Content-Language" content="nl" />
</head>
<body>
<div id="container">
<h3>Contact Formulier Versie 2</h3>
<?php
############################################
# Filename : contact.php #
#------------------------------------------#
# Written By : Thijs Ferket #
# Website : www.ferket.net #
#------------------------------------------#
############################################
ini_set('display_errors', 1);
error_reporting(E_ALL);
ob_start();
session_start();
// Config Gedeelte
$cfg['url'] = "http://www.uwwebsite.nl";// Site waarnaar je terug gaat als je een bericht hebt achtergelaten
$cfg['naam'] = "Uw naam"; // Webmaster naam
$cfg['email'] = "uw email adres"; // Webmaster E-mail
$cfg['spam'] = 10; // Anti Spam Tijd in Minuten ( Voer "0" om de Spam Beveiliging uit te zetten )
$cfg['text'] = TRUE; // Bij Fout Text Rood maken ( TRUE voor aan, FALSE voor uit )
$cfg['input'] = TRUE; // Bij Fout Border om Vakje Rood maken ( TRUE voor aan, FALSE voor uit )
$cfg['HTML'] = TRUE; // Een HTML email ( TRUE voor aan, FALSE voor uit )
$cfg['CAPTCHA'] = TRUE; // CAPTCHA ( TRUE voor aan, FALSE voor uit )
// Hieronder niks meer veranderen
// E-mail Checker / Validator
function checkmail($email)
{
if(eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$", $email))
{
return TRUE;
}
return FALSE;
}
$formulier = TRUE;
if(!isset($_COOKIE['formulier']))
{
if(isset($_POST['wis']) && ($_SERVER['REQUEST_METHOD'] == "POST"))
{
foreach($_POST as $key => $value)
{
unset($value);
}
header("Location: ".$_SERVER['PHP_SELF']."");
}
if(isset($_POST['verzenden']) && ($_SERVER['REQUEST_METHOD'] == "POST"))
{
$aFout = array();
$naam = trim($_POST['naam']);
$email = trim($_POST['email']);
$onderwerp = trim($_POST['onderwerp']);
$bericht = trim($_POST['bericht']);
if($cfg['CAPTCHA'])
{
$code = $_POST['code'];
}
if(empty($naam) || (strlen($naam) < 3) || eregi("[<>]", $naam) )
{
$aFout[] = "Er is geen naam ingevuld.";
unset($naam);
$fout['text']['naam'] = TRUE;
$fout['input']['naam'] = TRUE;
}
if(empty($email))
{
$aFout[] = "Er is geen e-mail adres ingevuld.";
unset($email);
$fout['text']['email'] = TRUE;
$fout['input']['email'] = TRUE;
}
elseif(checkmail($email) == 0)
// Wanneer je PHP 5.2 > gebruikt
//elseif(!filter_var($email, FILTER_VALIDATE_EMAIL))
{
$aFout[] = "Er is geen correct e-mail adres ingevuld.";
unset($email);
$fout['text']['email'] = TRUE;
$fout['input']['email'] = TRUE;
}
if(empty($onderwerp))
{
$aFout[] = "Er is geen onderwerp ingevuld.";
unset($onderwerp);
$fout['text']['onderwerp'] = TRUE;
$fout['input']['onderwerp'] = TRUE;
}
if(empty($bericht))
{
$aFout[] = "Er is geen bericht ingevuld.";
unset($bericht);
$fout['text']['bericht'] = TRUE;
$fout['input']['bericht'] = TRUE;
}
if($cfg['CAPTCHA'])
{
if(strtoupper($code) != $_SESSION['captcha_code'])
{
$aFout[] = "Er is geen correcte code ingevuld.";
$fout['text']['code'] = TRUE;
$fout['input']['code'] = TRUE;
}
}
if(!$cfg['text'])
{
unset($fout['text']);
}
if(!$cfg['input'])
{
unset($fout['input']);
}
if(!empty( $aFout ))
{
$errors = '
<div id="errors">
<ul>';
foreach($aFout as $sFout)
{
$errors .= " <li>".$sFout."</li>\n";
}
$errors .= "</ul>
</div>";
}
else
{
$formulier = FALSE;
if($cfg['HTML'])
{
// Headers
$headers = "From: \"Contact Formulier\" <".$cfg['email'].">\r\n";
$headers .= "Reply-To: \"".$naam."\" <".$email.">\n";
$headers .= "Return-Path: Mail-Error <".$cfg['email'].">\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Transfer-Encoding: 8bit\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
$bericht = '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
</head>
<body>
<br />
<b>Naam:</b> '.$naam.'<br />
<b>Email:</b> <a href=\"mailto:'.$email.'\">'.$email.'</a><br />
<br />
<b>Bericht:</b><br />
'.$bericht.'
<br />
<br />
<br />
--------------------------------------------------------------------------<br />
<b>Datum:</b> '.date("d-m-Y @ H:i:s").'<br />
<b>IP:</b> <a href=\"http://sunny.nic.com/cgi-bin/whois?domain='.$_SERVER['REMOTE_ADDR'].'\">'.$_SERVER['REMOTE_ADDR'].'</a><br />
<b>Host:</b> '.gethostbyaddr($_SERVER['REMOTE_ADDR']).'<br />
</body>
</html>';
}
else
{
$bericht_wrap = wordwrap ($bericht, 40, "\n", 1);
// Headers
$headers = "From: \"Contact Formulier\" <".$cfg['email'].">\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-type: text/plain; charset='iso-8859-1'\n";
// Bericht
$message = "Naam: ".$naam." \n";
$message .= "E-mail: ".$email." \n";
$message .= "Bericht:\n".$bericht_wrap." \n ";
$message .= " \n ";
$message .= "Datum: ".date("d-m-Y H:i:s")." \n";
$message .= "------------------------------------------------------- \n ";
$message .= "IP: ".$_SERVER['REMOTE_ADDR']." \n ";
$message .= "Host: ".gethostbyaddr($_SERVER['REMOTE_ADDR'])." \n ";
}
if(mail($cfg['email'], "[Contact] ".$onderwerp, $bericht, $headers))
{
if(isset($_POST['stuurkopie']))
{
$headers = "From: \"Contact Formulier\" <".$email.">\r\n";
$headers .= "Reply-To: \"".$naam."\" <".$email.">\n";
$headers .= "Return-Path: Mail-Error <".$email.">\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Transfer-Encoding: 8bit\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
mail($email, "[Contact] ".$onderwerp, $bericht, $headers);
}
unset($naam, $email, $onderwerp, $bericht);
setcookie("formulier", 1, time() + ( $cfg['spam'] * 60 ) );
echo "
<p>
Uw bericht is succesvol verzonden, er word zo snel mogelijk gereageerd.<br />
<br />
Met vriendelijke groeten,<br />
<b>".$cfg['naam']."</b>
</p>
";
}
else
{
echo "Er is een fout opgetreden bij het verzenden van de email";
}
header("refresh:3;url=".$cfg['url']."");
}
}
if($formulier)
{
?>
<?php
if(isset($errors)) {
echo $errors;
}
?>
<form method="post" action="<?php $_SERVER['PHP_SELF']; ?>">
<p>
<label <?php if(isset($fout['text']['naam'])) { echo 'class="fout"'; } ?>>Naam:</label>
<input type="text" id="naam" name="naam" maxlength="30" <?php if(isset($fout['input']['naam'])) { echo 'class="fout"'; } ?> value="<?php if (!empty($naam)) { echo stripslashes($naam); } ?>" /><br />
<label <?php if(isset($fout['text']['email'])) { echo 'class="fout"'; } ?>>Email:</label>
<input type="text" id="email" name="email" maxlength="255" <?php if(isset($fout['input']['email'])) { echo 'class="fout"'; } ?> value="<?php if (!empty($email)) { echo stripslashes($email); } ?>" /><br />
<label <?php if(isset($fout['text']['onderwerp'])) { echo 'class="fout"'; } ?>>Onderwerp:</label>
<input type="text" id="onderwerp" name="onderwerp" maxlength="40" <?php if(isset($fout['input']['onderwerp'])) { echo 'class="fout'; } ?> value="<?php if (!empty($onderwerp)) { echo stripslashes($onderwerp); } ?>" /><br />
<label <?php if(isset($fout['text']['bericht'])) { echo 'class="fout"'; } ?>>Bericht:</label>
<textarea id="bericht" name="bericht" <?php if(isset($fout['input']['bericht'])) { echo 'class="fout"'; } ?> cols="35" rows="6"><?php if (!empty($bericht)) { echo stripslashes($bericht); } ?></textarea><br />
<?php
if($cfg['CAPTCHA'])
{
?>
<label></label>
<img src="captcha.php" alt="" /><br />
<label <?php if(isset($fout['text']['code'])) { echo 'class="fout"'; } ?>>Code:</label>
<input type="text" id="code" name="code" maxlength="4" size="4" <?php if(isset($fout['input']['code'])) { echo 'class="captcha fout"'; } ?> /><br />
<?php
}
?>
<label for="stuurkopie">Stuur mij een kopie</label><input type="checkbox" id="stuurkopie" name="stuurkopie" value="1" /><br />
<label></label>
<input type="submit" id="verzenden" name="verzenden" value="verzenden" />
<input type="submit" id="wis" name="wis" value="Wis velden" />
</p>
</form>
<?php
}
}
else
{
echo "
<p>
U kunt maar eens in de ".$cfg['spam']." minuten een e-mail versturen!<br />
U wordt nu automatisch doorgestuurd.
</p>";
header("refresh:3;url=".$cfg['url']."");
}
?>
</div>
</body>
</html>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link href="style.css" rel="stylesheet" type="text/css" />
<title>Contact Formulier door Thijs</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="Content-Language" content="nl" />
</head>
<body>
<div id="container">
<h3>Contact Formulier Versie 2</h3>
<?php
############################################
# Filename : contact.php #
#------------------------------------------#
# Written By : Thijs Ferket #
# Website : www.ferket.net #
#------------------------------------------#
############################################
ini_set('display_errors', 1);
error_reporting(E_ALL);
ob_start();
session_start();
// Config Gedeelte
$cfg['url'] = "http://www.uwwebsite.nl";// Site waarnaar je terug gaat als je een bericht hebt achtergelaten
$cfg['naam'] = "Uw naam"; // Webmaster naam
$cfg['email'] = "uw email adres"; // Webmaster E-mail
$cfg['spam'] = 10; // Anti Spam Tijd in Minuten ( Voer "0" om de Spam Beveiliging uit te zetten )
$cfg['text'] = TRUE; // Bij Fout Text Rood maken ( TRUE voor aan, FALSE voor uit )
$cfg['input'] = TRUE; // Bij Fout Border om Vakje Rood maken ( TRUE voor aan, FALSE voor uit )
$cfg['HTML'] = TRUE; // Een HTML email ( TRUE voor aan, FALSE voor uit )
$cfg['CAPTCHA'] = TRUE; // CAPTCHA ( TRUE voor aan, FALSE voor uit )
// Hieronder niks meer veranderen
// E-mail Checker / Validator
function checkmail($email)
{
if(eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$", $email))
{
return TRUE;
}
return FALSE;
}
$formulier = TRUE;
if(!isset($_COOKIE['formulier']))
{
if(isset($_POST['wis']) && ($_SERVER['REQUEST_METHOD'] == "POST"))
{
foreach($_POST as $key => $value)
{
unset($value);
}
header("Location: ".$_SERVER['PHP_SELF']."");
}
if(isset($_POST['verzenden']) && ($_SERVER['REQUEST_METHOD'] == "POST"))
{
$aFout = array();
$naam = trim($_POST['naam']);
$email = trim($_POST['email']);
$onderwerp = trim($_POST['onderwerp']);
$bericht = trim($_POST['bericht']);
if($cfg['CAPTCHA'])
{
$code = $_POST['code'];
}
if(empty($naam) || (strlen($naam) < 3) || eregi("[<>]", $naam) )
{
$aFout[] = "Er is geen naam ingevuld.";
unset($naam);
$fout['text']['naam'] = TRUE;
$fout['input']['naam'] = TRUE;
}
if(empty($email))
{
$aFout[] = "Er is geen e-mail adres ingevuld.";
unset($email);
$fout['text']['email'] = TRUE;
$fout['input']['email'] = TRUE;
}
elseif(checkmail($email) == 0)
// Wanneer je PHP 5.2 > gebruikt
//elseif(!filter_var($email, FILTER_VALIDATE_EMAIL))
{
$aFout[] = "Er is geen correct e-mail adres ingevuld.";
unset($email);
$fout['text']['email'] = TRUE;
$fout['input']['email'] = TRUE;
}
if(empty($onderwerp))
{
$aFout[] = "Er is geen onderwerp ingevuld.";
unset($onderwerp);
$fout['text']['onderwerp'] = TRUE;
$fout['input']['onderwerp'] = TRUE;
}
if(empty($bericht))
{
$aFout[] = "Er is geen bericht ingevuld.";
unset($bericht);
$fout['text']['bericht'] = TRUE;
$fout['input']['bericht'] = TRUE;
}
if($cfg['CAPTCHA'])
{
if(strtoupper($code) != $_SESSION['captcha_code'])
{
$aFout[] = "Er is geen correcte code ingevuld.";
$fout['text']['code'] = TRUE;
$fout['input']['code'] = TRUE;
}
}
if(!$cfg['text'])
{
unset($fout['text']);
}
if(!$cfg['input'])
{
unset($fout['input']);
}
if(!empty( $aFout ))
{
$errors = '
<div id="errors">
<ul>';
foreach($aFout as $sFout)
{
$errors .= " <li>".$sFout."</li>\n";
}
$errors .= "</ul>
</div>";
}
else
{
$formulier = FALSE;
if($cfg['HTML'])
{
// Headers
$headers = "From: \"Contact Formulier\" <".$cfg['email'].">\r\n";
$headers .= "Reply-To: \"".$naam."\" <".$email.">\n";
$headers .= "Return-Path: Mail-Error <".$cfg['email'].">\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Transfer-Encoding: 8bit\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
$bericht = '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
</head>
<body>
<br />
<b>Naam:</b> '.$naam.'<br />
<b>Email:</b> <a href=\"mailto:'.$email.'\">'.$email.'</a><br />
<br />
<b>Bericht:</b><br />
'.$bericht.'
<br />
<br />
<br />
--------------------------------------------------------------------------<br />
<b>Datum:</b> '.date("d-m-Y @ H:i:s").'<br />
<b>IP:</b> <a href=\"http://sunny.nic.com/cgi-bin/whois?domain='.$_SERVER['REMOTE_ADDR'].'\">'.$_SERVER['REMOTE_ADDR'].'</a><br />
<b>Host:</b> '.gethostbyaddr($_SERVER['REMOTE_ADDR']).'<br />
</body>
</html>';
}
else
{
$bericht_wrap = wordwrap ($bericht, 40, "\n", 1);
// Headers
$headers = "From: \"Contact Formulier\" <".$cfg['email'].">\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-type: text/plain; charset='iso-8859-1'\n";
// Bericht
$message = "Naam: ".$naam." \n";
$message .= "E-mail: ".$email." \n";
$message .= "Bericht:\n".$bericht_wrap." \n ";
$message .= " \n ";
$message .= "Datum: ".date("d-m-Y H:i:s")." \n";
$message .= "------------------------------------------------------- \n ";
$message .= "IP: ".$_SERVER['REMOTE_ADDR']." \n ";
$message .= "Host: ".gethostbyaddr($_SERVER['REMOTE_ADDR'])." \n ";
}
if(mail($cfg['email'], "[Contact] ".$onderwerp, $bericht, $headers))
{
if(isset($_POST['stuurkopie']))
{
$headers = "From: \"Contact Formulier\" <".$email.">\r\n";
$headers .= "Reply-To: \"".$naam."\" <".$email.">\n";
$headers .= "Return-Path: Mail-Error <".$email.">\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Transfer-Encoding: 8bit\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
mail($email, "[Contact] ".$onderwerp, $bericht, $headers);
}
unset($naam, $email, $onderwerp, $bericht);
setcookie("formulier", 1, time() + ( $cfg['spam'] * 60 ) );
echo "
<p>
Uw bericht is succesvol verzonden, er word zo snel mogelijk gereageerd.<br />
<br />
Met vriendelijke groeten,<br />
<b>".$cfg['naam']."</b>
</p>
";
}
else
{
echo "Er is een fout opgetreden bij het verzenden van de email";
}
header("refresh:3;url=".$cfg['url']."");
}
}
if($formulier)
{
?>
<?php
if(isset($errors)) {
echo $errors;
}
?>
<form method="post" action="<?php $_SERVER['PHP_SELF']; ?>">
<p>
<label <?php if(isset($fout['text']['naam'])) { echo 'class="fout"'; } ?>>Naam:</label>
<input type="text" id="naam" name="naam" maxlength="30" <?php if(isset($fout['input']['naam'])) { echo 'class="fout"'; } ?> value="<?php if (!empty($naam)) { echo stripslashes($naam); } ?>" /><br />
<label <?php if(isset($fout['text']['email'])) { echo 'class="fout"'; } ?>>Email:</label>
<input type="text" id="email" name="email" maxlength="255" <?php if(isset($fout['input']['email'])) { echo 'class="fout"'; } ?> value="<?php if (!empty($email)) { echo stripslashes($email); } ?>" /><br />
<label <?php if(isset($fout['text']['onderwerp'])) { echo 'class="fout"'; } ?>>Onderwerp:</label>
<input type="text" id="onderwerp" name="onderwerp" maxlength="40" <?php if(isset($fout['input']['onderwerp'])) { echo 'class="fout'; } ?> value="<?php if (!empty($onderwerp)) { echo stripslashes($onderwerp); } ?>" /><br />
<label <?php if(isset($fout['text']['bericht'])) { echo 'class="fout"'; } ?>>Bericht:</label>
<textarea id="bericht" name="bericht" <?php if(isset($fout['input']['bericht'])) { echo 'class="fout"'; } ?> cols="35" rows="6"><?php if (!empty($bericht)) { echo stripslashes($bericht); } ?></textarea><br />
<?php
if($cfg['CAPTCHA'])
{
?>
<label></label>
<img src="captcha.php" alt="" /><br />
<label <?php if(isset($fout['text']['code'])) { echo 'class="fout"'; } ?>>Code:</label>
<input type="text" id="code" name="code" maxlength="4" size="4" <?php if(isset($fout['input']['code'])) { echo 'class="captcha fout"'; } ?> /><br />
<?php
}
?>
<label for="stuurkopie">Stuur mij een kopie</label><input type="checkbox" id="stuurkopie" name="stuurkopie" value="1" /><br />
<label></label>
<input type="submit" id="verzenden" name="verzenden" value="verzenden" />
<input type="submit" id="wis" name="wis" value="Wis velden" />
</p>
</form>
<?php
}
}
else
{
echo "
<p>
U kunt maar eens in de ".$cfg['spam']." minuten een e-mail versturen!<br />
U wordt nu automatisch doorgestuurd.
</p>";
header("refresh:3;url=".$cfg['url']."");
}
?>
</div>
</body>
</html>
niet getest en even heel vluchtig de boel omgegooit
Gewijzigd op 01/01/1970 01:00:00 door Bas IJzelendoorn
Contact Formulier Versie 2
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/celtsnl/public_html/mail/contact2.php:10) in /home/celtsnl/public_html/mail/contact2.php on line 29
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/celtsnl/public_html/mail/contact2.php:10) in /home/celtsnl/public_html/mail/contact2.php on line 29
maar in ieder geval bedankt voor de hulp
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/celtsnl/public_html/mail/contact2.php:10) in /home/celtsnl/public_html/mail/contact2.php on line 29
Warning: Cannot modify header information - headers already sent by (output started at /home/celtsnl/public_html/mail/contact2.php:10) in /home/celtsnl/public_html/mail/contact2.php on line 221
Uw bericht is succesvol verzonden, er word zo snel mogelijk gereageerd.
Met vriendelijke groeten,
Hans
Warning: Cannot modify header information - headers already sent by (output started at /home/celtsnl/public_html/mail/contact2.php:10) in /home/celtsnl/public_html/mail/contact2.php on line 236
zet session_start() eens helemaal bovenin je pagina:)
Tuurlijk zal dit script veel fouten opleveren, Nimtex heeft je een ongelofelijk brak script gegeven.
Hipska schreef op 06.01.2010 11:08:
Tuurlijk zal dit script veel fouten opleveren, Nimtex heeft je een ongelofelijk brak script gegeven.
het script algemeen is niet helemaal goed naar mijn mening. De verandering die ik heb gemaakt is het script in de body te zetten ipv boven de html tags. Omdat de error weergeeft dat de headers al verstuurd zijn. Was een ideetje en heb er moet ik eerlijk zijn niet heel uitgebreid naar gekeken en getest.
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
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
<?php
# sessie starten
session_start();
# kijken of er wat gepost is
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
# array maken voor berichten
$bericht = array();
# array maken voor de afbeeldingen
$Captcha = array
(
array('konijn', 'rabbit'),
array('kat', 'cat'),
array('varken', 'pig'),
array('koe', 'cow'),
array('eend', 'duck'),
array('kip', 'chicken'),
array('hond', 'dog')
);
# kijken of er wat ingevuld is bij naam veld
if(!empty($_POST['naam']))
{
# kijken of wat ingevoerd is bij emailadres , valideren kan als je hoger hebt dan 5.2 anders even een function er voor schrijven
if(filter_var($_POST['email'], FILTER_VALIDATE_EMAIL))
{
# controleren of er een onderwerp is ingevoerd
if(!empty($_POST['onderwerp']))
{
# controleren of er een bericht is opgegeven
if(!empty($_POST['bericht']))
{
# kijken of captcha is ingevoerd
if(!empty($_POST['captcha']))
{
# kijken of de invoerd van de captcha ook juist is
if(!in_array(strtolower($_POST['captcha']), $Captcha[$_SESSION['key']]))
{
# niet juist ingevuld, melding tonen
$bericht[] = 'U heeft de captcha niet juist ingevuld!';
}
else
{
# hier mag je zelf het mail stuk erin bouwe.. alles voorkouwen is ook niet.. En oja.. ik heb er ook geen zin meer in..
}
}
else
{
# geen cptcha invoerd
$bericht[] = 'U heeft de captcha niet ingevuld!';
}
}
else
{
# geen bericht ingevoerd, melding geven
$bericht[] = 'U heeft geen bericht ingevoerd!';
}
}
else
{
# geen onderwerp ingevoerd, melding geven
$bericht[] = 'U heeft geen onderwerp ingevoerd!';
}
}
else
{
# geen geldige email ingevoerd, melding geven
$bericht[] = 'U heeft geen geldige emailadres ingevoerd!';
}
}
else
{
# er is niks ingevuld, melding geven
$bericht[] = 'U heeft geen naam ingevoerd!';
}
}
# instellingen voor captcha
$_SESSION['key'] = rand(0, 6);
$sImage = './images/'.$_SESSION['key'].'.png';
?>
<html>
<head>
<title>Contactformulier</title>
</head>
<body>
<form method="POST" action="<?php echo basename($_SERVER['PHP_SELF']);?>" />
<p>
<label class="field" for="naam">Naam </label>
<input type="text" name="naam" value="" />
</p>
<p>
<label class="field" for="email">Emailadres </label>
<input type="text" name="email" value="" />
</p>
<p>
<label class="field" for="onderwerp">Onderwerp </label>
<input type="text" name="onderwerp" value="" />
</p>
<p>
<label class="field" for="bericht">Bericht </label>
<textarea name="bericht"></textarea>
</p>
<p>
<label class="field" for="captcha">Wat is dit voor dier?</label>
<img src="<?php echo $sImage; ?>" />
<input type="text" name="captcha" id="captcha" />
</p>
<input type="submit" value="Controleren" />
</form>
<?php
# berichten weergeven
if(!empty($bericht))
{
foreach($bericht as $meldingen)
{
echo $meldingen;
}
}
?>
</body>
</html>
# sessie starten
session_start();
# kijken of er wat gepost is
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
# array maken voor berichten
$bericht = array();
# array maken voor de afbeeldingen
$Captcha = array
(
array('konijn', 'rabbit'),
array('kat', 'cat'),
array('varken', 'pig'),
array('koe', 'cow'),
array('eend', 'duck'),
array('kip', 'chicken'),
array('hond', 'dog')
);
# kijken of er wat ingevuld is bij naam veld
if(!empty($_POST['naam']))
{
# kijken of wat ingevoerd is bij emailadres , valideren kan als je hoger hebt dan 5.2 anders even een function er voor schrijven
if(filter_var($_POST['email'], FILTER_VALIDATE_EMAIL))
{
# controleren of er een onderwerp is ingevoerd
if(!empty($_POST['onderwerp']))
{
# controleren of er een bericht is opgegeven
if(!empty($_POST['bericht']))
{
# kijken of captcha is ingevoerd
if(!empty($_POST['captcha']))
{
# kijken of de invoerd van de captcha ook juist is
if(!in_array(strtolower($_POST['captcha']), $Captcha[$_SESSION['key']]))
{
# niet juist ingevuld, melding tonen
$bericht[] = 'U heeft de captcha niet juist ingevuld!';
}
else
{
# hier mag je zelf het mail stuk erin bouwe.. alles voorkouwen is ook niet.. En oja.. ik heb er ook geen zin meer in..
}
}
else
{
# geen cptcha invoerd
$bericht[] = 'U heeft de captcha niet ingevuld!';
}
}
else
{
# geen bericht ingevoerd, melding geven
$bericht[] = 'U heeft geen bericht ingevoerd!';
}
}
else
{
# geen onderwerp ingevoerd, melding geven
$bericht[] = 'U heeft geen onderwerp ingevoerd!';
}
}
else
{
# geen geldige email ingevoerd, melding geven
$bericht[] = 'U heeft geen geldige emailadres ingevoerd!';
}
}
else
{
# er is niks ingevuld, melding geven
$bericht[] = 'U heeft geen naam ingevoerd!';
}
}
# instellingen voor captcha
$_SESSION['key'] = rand(0, 6);
$sImage = './images/'.$_SESSION['key'].'.png';
?>
<html>
<head>
<title>Contactformulier</title>
</head>
<body>
<form method="POST" action="<?php echo basename($_SERVER['PHP_SELF']);?>" />
<p>
<label class="field" for="naam">Naam </label>
<input type="text" name="naam" value="" />
</p>
<p>
<label class="field" for="email">Emailadres </label>
<input type="text" name="email" value="" />
</p>
<p>
<label class="field" for="onderwerp">Onderwerp </label>
<input type="text" name="onderwerp" value="" />
</p>
<p>
<label class="field" for="bericht">Bericht </label>
<textarea name="bericht"></textarea>
</p>
<p>
<label class="field" for="captcha">Wat is dit voor dier?</label>
<img src="<?php echo $sImage; ?>" />
<input type="text" name="captcha" id="captcha" />
</p>
<input type="submit" value="Controleren" />
</form>
<?php
# berichten weergeven
if(!empty($bericht))
{
foreach($bericht as $meldingen)
{
echo $meldingen;
}
}
?>
</body>
</html>
20 euro a.u.b
het plaatje met het diertje ontbreekt
gr.Hans
hans schreef op 06.01.2010 23:11:
hoi Niels ziet er veel belovend uit echter kan ik het niet testen
het plaatje met het diertje ontbreekt
http://www.celts.nl/mail/contact.php
gr.Hans
het plaatje met het diertje ontbreekt
http://www.celts.nl/mail/contact.php
gr.Hans
i.p.v dat je een if else gebruikt controleer je gewoon of de waarde niet is ingevuld, zoja, dan maak je een variable aan met de error.
Bij je foreach ook een foutje lijkt me, je wilt natuurlijk niet de errors achter elkaar hebben maar onder elkaar. dus .'</br>' toevoegen.
hans schreef op 06.01.2010 23:11:
hoi Niels ziet er veel belovend uit echter kan ik het niet testen
het plaatje met het diertje ontbreekt
gr.Hans
het plaatje met het diertje ontbreekt
gr.Hans
Dan zoek/maak je toch een plaatje?
Je hebt gelijk.. Maar ik had niet zoveel tijd om het helemaal prof te gaan doen.. Hij mag zelf ook wel wat initiatief tonen toch?
Over die foreach. Neaj dat klopt gewoon omdat ik elke keer een ifje maakt. Ik ben nu bezig met een class voor het generen van formulieren die zal ik een dezer dagen ook posten.
@aar
Idd... dat moet toch niet zo heel moeilijk zijn? :(
@hans
Als je naar die site was geweest die ik je had gegeven had je het script al veel eerder gehad.. Welliswaar kleine aanpassingen moeten doen. Maar kom op iets leren doe je nooit te laat toch?
Suc6!
EDIT
Als je geen zin hebt om plaatsen te maken / downloaden, er zijn 6 mogelijkheden ooit zal je wel een keer de goeie hebben:)
Gewijzigd op 01/01/1970 01:00:00 door Niels K
daarvoor is de materie te nieuw op dit moment
moet er meer in verdiepen in toekomst
gr. Hans
PHPhulp
PHP:
http://phphulp.nl/php/tutorials/8/508/
MYSQL: (Is verouderd)
http://phphulp.nl/php/tutorials/3/474/1088/
PHPTuts (www.phptuts.nl)
PHP:
http://phptuts.nl/view/39/
MYSQL: (Is verouderd)
http://phptuts.nl/view/41/
Wat je ook kan doen is gelijk groot beginnen namelijk in het object georiënteerde gaan leren programmeren. Als je grote webapplicatie's gaat bouwen ga je merken dat je er niet meer omheen kan. Teminste dat was bij mij na 3 mislukte forums en nog een paar verknalde CMS systemen.
Ik geef toe. Het is moeilijk. Het heeft een aantal weken geduurd voordat ik enigszins het begon te snappen. (Snap het nu nog niet helemaal maar dat ter zake)
Het is de kunst om de denkwijze van OO te kennen. Als je eerst begint met het 'normale' PHP is het moeilijker om over te stappen naar OO. Natuurlijk moet je wel een paar beginners handleidingen lezen zodat je toch wel enigszins weet wat het over gaat. Ik blaas het normale PHP gebeuren niet af. Neaj integendeel als jij het beter / lekkerder vind programmeren moet jij dat gewoon doen. Het is tenslotte jouw feestje:) Als je toch van plan bent om OO te gaan bestuderen zou ik deze tutorial doornemen en alle oefeningen die daar worden besproken zelf over te typen en uit te breiden.
http://phptuts.nl/view/45/
Zoals ik al aangaf is mysql verouderd en gaat hij in PHP 6 eruit. Dan kan je beter gebruik maken van Mysqli of PDO hiervoor weer 2 handleidingen
MYSQLI : http://phptuts.nl/view/26/
PDO: http://phptuts.nl/view/27/
Ik hoop dat ik je de moed en kracht heb gegeven om jezelf te verdiepen in PHP
Ik wens je veel succes en als je vragen hebt mag je die ten alle tijden vragen
Gegroet
Gewijzigd op 01/01/1970 01:00:00 door Niels K
als oldtimer
groeten Hans