Contact/Mail formulier (Anti Spam & Mail Checker)
Nieuwe versie hier te vinden:
http://www.phphulp.nl/php/scripts/1/1210/
6-2-2007:
Update, script herschreven en wat kleine bugs eruit gehaalt!!
Omdat geen enkel mail formulier aan mijn eisen voldeed heb ik dr zelf maar 1tje gemaakt..
Mocht iemand toch nog een bug of een verbetering ergens vinden meld dat dan even aub!
Ik hoop dat jullie er wat mee kunnen!
Features:
- Anti Spam
- E-Mail Validator/Checker ( http://www.phphulp.nl/php/scripts/8/191/ )
- Uitgebreid controleren van de ingevoerde waardes
- Valid XHTML 1.0 Strict
- Valid CSS 2.0
Installatie:
Even de variabelen veranderen en uploaden en je bent klaar!
Getest met:
- IE 6
- Firefox 1.0.6
- Opera 8.02
Voorbeeld:
http://php.ferket.net/contact.php
Voorbeeld: http://php.ferket.net/contact.php
Gesponsorde koppelingen
PHP script bestanden
Er zijn 162 reacties op 'Contactmail formulier anti spam en mail checker'
Gesponsorde koppelingen
Is het misschien een idee dat je eerst een CC verzend naar het opgegeven adres, en dan de aankomst bevestigd. Waarna je vervolgens het bericht naar jezelf laat sturen? (Ik weet niet of er een mail aankomst bevestiging in PHP mogelijk is)
Ik heb het eens geprobeer, maar dat was nog in de tijd dat ik lycos free had, en je geen headers met je mail mee mogt sturen, die werden allemaal overschreven door lycos. Maar als er vraag naar is kan ik die daaroor benodigde header wel weer een extracten uit een mailtje...
oja, even opgezocht, als je een ontvangstbevestiging wilt aanvragen, deze headers zijn daar voor geschikt (geloof ik):
Disposition-Notification-To: Jelmer van der Linde <[email protected]>
Return-Receipt-To: *idem*
Die laatste weet ik niet zeker, maar stuur mij maar eens een mailtje vanuit een adner programma dan Thunderbird met ontvangstbevestiging, dan kan ik even kijken. Alvast bedankt.
Warning: mail() [function.mail]: "sendmail_from" not set in php.ini or custom "From:" header missing in c:\wamp\www\mailformulier.php on line 126
Uw contact bericht is succesvol verzonden!
Er word zo snel mogelijk gereageerd.
Met vriendelijke groeten,
Shu Chen
Warning: Cannot modify header information - headers already sent by (output started at c:\wamp\www\mailformulier.php:6) in c:\wamp\www\mailformulier.php on line 136
Warning: Cannot modify header information - headers already sent by (output started at c:\wamp\www\mailformulier.php:6) in c:\wamp\www\mailformulier.php on line 141
kan die warning weg?
<table>
<tr><td> </td><td> </td></tr>
<tr><td><font color="">Naam:</font></td><td><input type="text" class="" name="naam" maxlength="20" value=""></td></tr>
<tr><td><font color="">Email:</font></td><td><input type="text" class="" name="email" maxlength="30" value=""></td></tr>
<tr><td><font color="">Onderwerp:</font></td><td><input type="text" class="" name="onderwerp" maxlength="30" value=""></td></tr>
<tr><td valign=top><font color="">Bericht:</font></td><td><textarea name="bericht" style="border: 1px solid oceanblue"/ class="" cols="30" rows="4"></textarea></td></tr>
<tr><td></td><td><input type="submit" name="verzenden" value="Verzenden">
<input type="reset" name="reset" value="Reset"></td></tr>
</table>
</from>
dat bericht vak wil ik dus die border omheen krijgen, en is de style.css staan dus al die styles, maar die werkt niet op die bericht vak. nu heb ik er dus die regel van jou ingedaan, alleen ik krijg niet dezelfde kleur te pakken als die van de andere vakjes.. hoe kan ik er gewoon #f2f4f7 in krijgen? want als ik er gewoon een kleurcode in doe dan doet hij het niet..
thx
Rens
En voor diegene die zich vooral in borders interesseren:
http://www.w3schools.com/css/css_border.asp
En ja, je mag ook gewoon hex-waarden gebruiken in plaats van namen. Ik wist gewoon even niet de hexwaarde van rood uit mijn hoofd (#FF0000)
<table>
<tr><td> </td><td> </td></tr>
<tr><td><font color="">Naam:</font></td><td><input type="text" class="" name="naam" maxlength="20" value=""></td></tr>
<tr><td><font color="">Email:</font></td><td><input type="text" class="" name="email" maxlength="30" value=""></td></tr>
<tr><td><font color="">Onderwerp:</font></td><td><input type="text" class="" name="onderwerp" maxlength="30" value=""></td></tr>
<tr><td valign=top><font color="">Bericht:</font></td><td><textarea style="border: 1px solid #f2f4f7" name="bericht" class="" cols="30" rows="4"></textarea></td></tr>
<tr><td></td><td><input type="submit" name="verzenden" value="Verzenden">
<input type="reset" name="reset" value="Reset"></td></tr>
</table>
</from>
Nu geeft hij geen border weer.. wat doe ik fout? :P
In je stylesheet staat:
input {
background-color: #ffffff;
border-style: solid;
border-width: 1px;
border-color: #bac5d6;
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #000000;
}
maak daarvan
input, textarea {
background-color: #ffffff;
border-style: solid;
border-width: 1px;
border-color: #bac5d6;
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #000000;
}
ALs upc, kpn, casema of wat voorn aanbieder je dan ook hebt je los plugt, de politie je vast zet in een cel, je computer met de grond gelijk wordt gemaakt, en allen andere computers die je wilt aanraken plotseling van goud worden, dan wordt spammen wel moeilijker.
Maar realistisch gezien is het onmoggelijk om handmatig spammen tegen te gaan, en automatisch gespam kun je oplossen met een mooi plaatje
if(empty($bericht))
{
$fout .= "U bent vergeten een bericht in te vullen! <BR";
unset($bericht);
$fout_vakje_bericht = "input_fout";
$fout_text_bericht = "#FF0000";
moet dat niet zijn:
}
if(empty($bericht))
{
$fout .= "U bent vergeten een bericht in te vullen! <BR>;
unset($bericht);
$fout_vakje_bericht = "input_fout";
$fout_text_bericht = "#FF0000";
:P:P
echter nog een vraagje, in het formulier wil ik 2 radiobuttons erbij,
maar hoe kom ik te weten welke van de 2 de gebruiker heeft aangevinkt?
ik voeg toe op de juiste plaasten:
$vooruitb = $_POST['vooruitb'];
$ophalen = $_POST['ophalen'];
en
Ophalen: ".$ophalen." \n
Verstuurd op: ".$datum." \n
en dan dit dus:
<input type="radio" name="betaalwijze" value="" checked>
<input type="radio" name="betaalwijze" value="">
Als ik de mail krijg staat er echter:
vooruitb =
ophalen =
(niks dus)
Wat doe ik verkeerd?
( b.v. [email protected] )
Kan je dat ook wat vriendelijker laten weergeven?
ik heb het formulier op mijn site staan, maar nu wil ik zo'n select erbij hebben en nog een aantal dingen, ik kom er alleen niet uit. ben pas begonnen met php.
Ik zou dit er graag in willen zou iemand mij kunnen helpen:
postcode
telefoon nummer
en een select voor nieuwsbrief
ik hoop dat iemand mij kan helpen
alvast bedankt
mvg
zakariae
function checkmail($mail)
{
// explode het e-mail adres op een @
$email_host = explode("@", $mail);
// pak alles na de @
$email_host = $email_host['1'];
// zet een var met de (eventuele) DNS van de domein
$email_resolved = gethostbyname($email_host);
// kijk of er een DNS aan zit en of alles voor en na het e-mail adres klopt
if ($email_resolved != $email_host && eregi("^[0-9a-z]([-_.~]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$mail))
$valid = 1;
// wanneer het geldig is, is $valid = 1, zo niet, dan geeft hij geen result (NULL)
return $valid;
}
Kan iemand misschien uitleggen waarom dit: "$email_resolved != $email_host"
moet gelden om valid = 1 op te leveren?
email_host is bijvoorbeeld hotmail.com toch?
[email protected] invul verstuurt ie wel gewoon
$host = gethostbyaddr($ip); // Host van verstuurder
// IP van de verstuurder
if(getenv($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ip = getenv($_SERVER['HTTP_X_FORWARDED_FOR']);
} elseif(getenv($_SERVER['HTTP_CLIENT_IP'])) {
$ip = getenv($_SERVER['HTTP_CLIENT_IP']);
} else {
$ip = $_SERVER['REMOTE_ADDR'];
}
moet even omgedraaid worden naar:
// IP van de verstuurder
if(getenv($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ip = getenv($_SERVER['HTTP_X_FORWARDED_FOR']);
} elseif(getenv($_SERVER['HTTP_CLIENT_IP'])) {
$ip = getenv($_SERVER['HTTP_CLIENT_IP']);
} else {
$ip = $_SERVER['REMOTE_ADDR'];
}
$host = gethostbyaddr($ip); // Host van verstuurder
Anders (zoals het nu is) vraagt hij $ip op, die nog niet gedefineerd is (want dat gebeurt dus net daaronder). En ja, dan vult hij geen waarde in, en *niks* kan je moeilijk opzoeken.
Het "bericht" veld heeft een groter lettertype dan de rest.
Dit staat niet zo mooi, ik heb al heel wat geprobeerd om het goed te krijgen maar dan verlies ik altijd wel iets (vb rode border rond tekstvak als ie fout is).
Ik denk dat het maar iets simpels is dat ik over het hoofd zie :s
Heeft iemand van jullie hier een oplossing voor?
Het is trouwens wel goed als je zorgt dat je een foutmelding krijgt (dan is het dus wel dezelfde letter grootte als de andere vakken).
Ja kwam dr zelf ook achter maar was vergeten het hier te veranderen :X
@Tim
Ik zou binnekort even bekijken wat ik eraan kan doen
Edit:
maak van dit
input {
background-color: #ffffff;
border-style: solid;
border-width: 1px;
border-color: #bac5d6;
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #000000;
}
even dit:
input, textarea {
background-color: #ffffff;
border-style: solid;
border-width: 1px;
border-color: #bac5d6;
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #000000;
}
dat zou moeten werken
ik zit reeds een tijdje te proberen met het script maar er blijft me iets tegensteken waardoor het niet goed werkt ... kan iemand mij het script eens in een txt'tje zenden aub ... ik zou het sterk appreciëren mocht ik straks in mijn mailbox een txtfile vinden van een zeer vriendelijke persoon :)
Greetz
<tr><td>Onderwerp:</td>
<td><select name="onderwerp">
<option >naam1</option>
<option >naam2</option>
<option >naam3</option>
</select>
</td></tr>
$maand = "$_POST['maand']";
$jaar = "$_POST['jaar']";
<select name="dag">
<option value="-1" ></option>
<option value="01" >1</option>
<option value="02" >2</option>
<option value="03" >3</option>
</select>
<select name="maand">
<option value="-1" ></option>
<option value="01" >Januari</option>
<option value="02" >Februari</option>
<option value="03" >Maart</option>
</select>
<select name="jaar">
<option value="-1" ></option>
<option value="1930" >1930</option>
<option value="1931" >1931</option>
<option value="1932" >1932</option>
</select>
Dan checken of er "-1" invoorkomt
Ik heb nu het volgende:
Ik heb daar zojuist iets over gelezen en ben ermee aan de slag gegaan.
En nu ga ik naar het volgende probleem.
1. op het formulier kun je aangegeven wat je burgelijke staat is. Als je bijvoorbeeld aangeeft of je gehuwd of samenwonend bent dan moet je melddingen krijgen. Je kunt dan zo zien welke je gegevens je verder moet invullen.
2. als er word gevraagd of je bijvoorbeeld een eigen woning hebt dan moet je een aantal gegevens invullen. Ook daar moet je dus meldingen krijgen.
Ik ben er al sinds 3 dagen mee bezig. Maar het beoogde resultaat krijg ik gewoon niet voor elkaar. Waarschijnlijk omdat ik bepaalde dingen gewoon niet meer helder zien na al die nachten. Wie kan mij helpen. Zie script.
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
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
ob_start(); // Voor Cookie setten
// Headers zetten zodat de de inhoud niet word gecashed
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
// Config Gedeelte
$site = "mijnsite; // Site waarnaar je terug gaat als je een bericht hebt achtergelaten
$wm_naam = "webmaster"; // Webmaster naam
$wm_email = "mijn e-mail"; // Webmaster E-mail
$Anti_Spam = "10"; // Anti Spam Tijd in Minuten ( Voer "0" om de Spam Beveiliging uit te zetten )
$fout_text = TRUE; // Bij Fout Text Rood maken ( TRUE voor aan, FALSE voor uit )
$fout_vakje = TRUE; // Bij Fout Border om Vakje Rood maken ( TRUE voor aan, FALSE voor uit )
$html = TRUE; // Een HTML email
// Hierna hoef je niks meer te veranderen!
$voorletters_aanvrager = $_POST['voorletters_aanvrager'];
$tussenvoegsel_aanvrager = $_POST['tussenvoegsel_aanvrager'];
$achternaam_aanvrager = $_POST['achternaam_aanvrager'];
$geslacht_aanvrager = $_POST['geslacht_aanvrager'];
$geboortedatum_aanvrager = $_POST['geboortedatum_aanvrager'];
$burgelijke_staat_aanvrager = $_POST['burgelijke_staat_aanvrager'];
$voorletters_partner = $_POST['voorletters_partner'];
$tussenvoegsel_partner = $_POST['tussenvoegsel_partner'];
$achternaam_partner = $_POST['achternaam_partner'];
$geslacht_partner = $_POST['geslacht_partner'];
$geboortedatum_partner = $_POST['geboortedatum_partner'];
$straat = $_POST['straat'];
$huisnummer = $_POST['huisnummer'];
$postcode = $_POST['postcode'];
$woonplaats = $_POST['woonplaats'];
$woonachtig = $_POST['woonachtig'];
$telefoonnummer = $_POST['telefoonnummer'];
$mobiel = $_POST['mobiel'];
$email = $_POST['email'];
$beroep_aanvrager = $_POST['beroep_aanvrager'];
$brutoinkomen_aanvrager = $_POST['brutoinkomen_aanvrager'];
$dienstverband_aanvrager = $_POST['dienstverband_aanvrager'];
$naam_werkgever_aanvrager = $_POST['naam_werkgever_aanvrager'];
$plaats_werkgever_aanvrager = $_POST['plaats_werkgever_aanvrager'];
$beroep_partner = $_POST['beroep_partner'];
$brutoinkomen_partner = $_POST['brutoinkomen_partner'];
$dienstverband_partner = $_POST['dienstverband_partner'];
$naam_werkgever_partner = $_POST['naam_werkgever_partner'];
$plaats_werkgever_partner = $_POST['plaats_werkgever_partner'];
$hypotheekbedrag = $_POST['hypotheekbedrag'];
$onderwerp = $_POST['onderwerp'];
$eigen_bewoning = $_POST['eigen_woning'];
$maandlasten = $_POST['maandlasten'];
$verkoopwaarde = $_POST['verkoopwaarde'];
$nogaftelossen = $_POST['nogaftelossen'];
// IP van de verstuurder
if(getenv($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ip = getenv($_SERVER['HTTP_X_FORWARDED_FOR']);
} elseif(getenv($_SERVER['HTTP_CLIENT_IP'])) {
$ip = getenv($_SERVER['HTTP_CLIENT_IP']);
} else {
$ip = $_SERVER['REMOTE_ADDR'];
}
$host = gethostbyaddr($ip); // Host van verstuurder
if($html) {
// Headers
$headers = "From: \"Contactformulier\" <".$wm_naam.">\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "Return-Path: Mail-Error <".$wm_naam.">\r\n";
// Bericht
$message = "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">";
$message .= "<HTML><HEAD>";
$message .= "<META http-equiv=3DContent-Type content=3D\"text/html; = charset=3Dwindows-1252\">";
$message .= "<META content=3D\"MSHTML 6.00.2600.0\" name=3DGENERATOR>";
$message .= "</HEAD><BODY>";
$message .= "<BR> ";
$message .= "<TABLE>";
$message .= "<tr><td><B>GEGEVENS AANVRAGER</B></td></tr>";
$message .= "<tr><td>Voorletters:</td><td>".$voorletters_aanvrager."</td></tr>";
$message .= "<tr><td>Tussenvoegsel:</td><td>".$tussenvoegsel_aanvrager."</td></tr>";
$message .= "<tr><td>Achternaam:</td><td>".$achternaam_aanvrager."</td></tr>";
$message .= "<tr><td>Geslacht:</td><td>".$geslacht_aanvrager."</td></tr>";
$message .= "<tr><td>Geboortedatum:</td><td>".$geboortedatum_aanvrager."</td></tr>";
$message .= "<tr><td>Burgelijke staat:</td><td>".$burgelijke_staat_aanvrager."</td></tr>";
$message .= "<BR> ";
$message .= "<tr><td></td><td></td></tr>";
$message .= "<tr><td><B>GEGEVENS PARTNER</B></td><td>";
$message .= "<tr><td>Voorletters:</td><td>".$voorletters_partner."</td></tr>";
$message .= "<tr><td>Tussenvoegsel:</td><td>".$tussenvoegsel_partner."</td></tr>";
$message .= "<tr><td>Achternaam:</td><td>".$achternaam_partner."</td></tr>";
$message .= "<tr><td>Geslacht:</td><td>".$geslacht_partner."</td></tr>";
$message .= "<tr><td>Geboortedatum:</td><td>".$geboortedatum_partner."</td></tr>";
$message .= "<BR> ";
$message .= "<tr><td></td><td></td></tr>";
$message .= "<tr><td><B>ADRESGEGEVENS</B></td><td>";
$message .= "<tr><td>straat:</td><td>".$straat."</td></tr>";
$message .= "<tr><td>Huisnummer:</td><td>".$huisnummer."</td></tr>";
$message .= "<tr><td>Postcode:</td><td>".$postcode."</td></tr>";
$message .= "<tr><td>Woonplaats:</td><td>".$woonplaats."</td></tr>";
$message .= "<tr><td>Woonachtig sinds:</td><td>".$woonachtig."</td></tr>";
$message .= "<tr><td>Telefoonummer:</td><td>".$telefoonnummer."</td></tr>";
$message .= "<tr><td>Mobiel:</td><td>".$mobiel."</td></tr>";
$message .= "<tr><td>E-mailadres:</td><td><a href=\"mailto:".$email."\">".$email."</a></td></tr>";
$message .= "<BR> ";
$message .= "<tr><td></td><td></td></tr>";
$message .= "<tr><td><B>GEGEVENS BEROEP AANVRAGER</B></td><td>";
$message .= "<tr><td>Beroep:</td><td>".$beroep_aanvrager."</td></tr>";
$message .= "<tr><td>Bruto inkomen:</td><td>".$brutoinkomen_aanvrager."</td></tr>";
$message .= "<tr><td>Aard dienstverband:</td><td>".$dienstverband_aanvrager."</td></tr>";
$message .= "<tr><td>Naam werkgever:</td><td>".$naam_werkgever_aanvrager."</td></tr>";
$message .= "<tr><td>Plaats werkgever:</td><td>".$plaats_werkgever_aanvrager."</td></tr>";
$message .= "<BR> ";
$message .= "<tr><td></td><td></td></tr>";
$message .= "<tr><td><B>GEGEVENS BEROEP PARTNER</B></td><td>";
$message .= "<tr><td>Beroep:</td><td>".$beroep_partner."</td></tr>";
$message .= "<tr><td>Bruto inkomen:</td><td>".$brutoinkomen_partner."</td></tr>";
$message .= "<tr><td>Aard dienstverband:</td><td>".$dienstverband_partner."</td></tr>";
$message .= "<tr><td>Naam werkgever:</td><td>".$naam_werkgever_partner."</td></tr>";
$message .= "<tr><td>Plaats werkgever:</td><td>".$plaats_werkgever_partner."</td></tr>";
$message .= "<BR> ";
$message .= "<tr><td></td><td></td></tr>";
$message .= "<tr><td><B>GEGEVENS INZAKE HYPOTHEEKAANVRAAG</B></td><td>";
$message .= "<tr><td>Gewenst hypotheekbedrag:</td><td>".$hypotheekbedrag."</td></tr>";
$message .= "<tr><td>Soort aankoop:</td><td>".$onderwerp."</td></tr>";
$message .= "<tr><td>Eigen woning:</td><td>".$eigen_woning."</td></tr>";
$message .= "<tr><td>Maandlasten:</td><td>".$maandlasten."</td></tr>";
$message .= "<tr><td>Verkoopwaarde:</td><td>".$verkoopwaarde."</td></tr>";
$message .= "<tr><td>Nog af te lossen:</td><td>".$nogaftelossen."</td></tr>";
$message .= "<BR> ";
$message .= "<tr><td></td><td></td></tr>";
$message .= "<tr><td>Datum:</td><td>".date("d-m-Y H:i:s")."</td></tr>";
$message .= "<tr><td>IP:</td><td><a href=\"http://sunny.nic.com/cgi-bin/whois?domain=".$ip."\">".$ip."</a></td></tr>";
$message .= "<tr><td>Host:</td><td>".$host."</td></tr>";
$message .= "</TABLE></BODY></HTML>";
}
else {
// Headers
$headers = "From: \"Contact Formulier\" <".$wm_naam.">\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/plain; charset=iso-8859-1";
// Bericht
$message = "Voorletters: ".$voorletters_aanvrager." \n";
$message .= "Tussenvoegsel: ".$tussenvoegsel_aanvrager." \n";
$message .= "Achternaam: ".$achternaam_aanvrager." \n";
$message .= "Geslacht: ".$geslacht_aanvrager." \n";
$message .= "Geboortedatum: ".$geboortedatum_aanvrager." \n";
$message .= "Burgelijke staat: ".$burgelijke_staat_aanvrager." \n";
$message .= "Voorletters: ".$voorletters_partner." \n";
$message .= "Tussenvoegsel: ".$tussenvoegsel_partner." \n";
$message .= "Achternaam: ".$achternaam_partner." \n";
$message .= "Geslacht: ".$geslacht_partner." \n";
$message .= "Geboortedatum: ".$geboortedatum_partner." \n";
$message .= "Straat: ".$straat." \n";
$message .= "Huisnummer: ".$huisnummer." \n";
$message .= "Postcode: ".$postcode." \n";
$message .= "Woonplaats: ".$woonplaats." \n";
$message .= "Woonachtig sinds: ".$woonachtig." \n";
$message .= "Telefoonnummer: ".$telefoonnummer." \n";
$message .= "Mobiel: ".$mobiel." \n";
$message .= "E-mailadres: ".$email." \n";
$message .= "Beroep: ".$beroep_aanvrager." \n";
$message .= "Bruto inkomen: ".$brutoinkomen_aanvrager." \n";
$message .= "Aard dienstverband: ".$dienstverband_aanvrager." \n";
$message .= "Naam werkgever: ".$naam_werkgever_aanvrager." \n";
$message .= "Plaats werkgever: ".$plaats_werkgever_aanvrager." \n";
$message .= "Beroep: ".$beroep_partner." \n";
$message .= "Bruto inkomen: ".$brutoinkomen_partner." \n";
$message .= "Aard dienstverband: ".$dienstverband_partner." \n";
$message .= "Naam werkgever: ".$naam_werkgever_partner." \n";
$message .= "Plaats werkgever: ".$plaats_werkgever_partner." \n";
$message .= "Gewenst hypotheekbedrag: ".$hypotheekbedrag." \n";
$message .= "Soort aankoop: ".$onderwerp." \n";
$message .= "Eigen woning: ".$eigen_woning." \n";
$message .= "Maandlasten: ".$maandlasten." \n";
$message .= "Verkoopwaarde: ".$verkoopwaarde." \n";
$message .= "Nog af te lossen: ".$nogaftelossen." \n";
$message .= " \n ";
$message .= "Datum: ".date("d-m-Y H:i:s")." ";
$message .= "------------------------------------------------------- \n ";
$message .= "IP: ".$ip." \n ";
$message .= "Host: ".$host." \n ";
}
// Mail Checker
function checkmail($mail)
{
$email_host = explode("@", $mail);
$email_host = $email_host['1'];
$email_resolved = gethostbyname($email_host);
if ($email_resolved != $email_host && eregi("^[0-9a-z]([-_.~]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$mail))
$valid = 1;
return $valid;
}
// kijken of het cookie bestaat, zoja dan wordt het formulier niet getoond.
if(!isset($_COOKIE['mailformulier']))
{
// Alles Controleren Wanneer er op Verzenden wordt gedrukt
if(isset($_POST['verzenden']))
{
$fout = "";
if((empty($voorletters_aanvrager)) OR (strlen($voorletters_aanvrager) < 1) OR (eregi(">", $voorletters_aanvrager)))
{
{
$fout .= "U bent vergeten uw voorletters in te vullen! <BR>";
unset($voorletters_aanvrager);
$fout_vakje_voorletters_aanvrager = "input_fout";
$fout_text_voorletters_aanvrager = "#FF0000";
}
if((empty($achternaam_aanvrager)) OR (strlen($achternaam_aanvrager) < 1) OR (eregi(">", $achternaam_aanvrager)))
{
$fout .= "U bent vergeten uw achternaam in te vullen! <BR>";
unset($achternaam_aanvrager);
$fout_vakje_achternaam_aanvrager = "input_fout";
$fout_text_achternaam_aanvrager = "#FF0000";
}
if((empty($geslacht_aanvrager)) OR (strlen($geslacht_aanvrager) < 1) OR (eregi(">", $geslacht_aanvrager)))
{
$fout .= "U bent vergeten uw geslacht in te vullen! <BR>";
unset($geslacht_aanvrager);
$fout_vakje_geslacht_aanvrager = "input_fout";
$fout_text_geslacht_aanvrager = "#FF0000";
}
if((empty($geboortedatum_aanvrager)) OR (strlen($geboortedatum_aanvrager) < 1 ) OR (eregi(">", $geboortedatum_aanvrager)))
{
$fout .= "U bent vergeten uw geboortedatum in te vullen! <BR>";
unset($geboortedatum_aanvrager);
$fout_vakje_geboortedatum_aanvrager = "input_fout";
$fout_text_geboortedatum_aanvrager = "#FF0000";
}
if((empty($burgelijke_staat_aanvrager)) OR (strlen($burgelijke_staat_aanvrager) < 1) OR (eregi(">", $burgelijke_staat_aanvrager)))
{
$fout .= "U bent vergeten uw burgeljke staat in te vullen! <BR>";
unset($burgelijke_staat_aanvrager);
$fout_vakje_burgelijke_staat_aanvrager = "input_fout";
$fout_text_burgelijke_staat_aanvrager = "#FF0000";
}
}
if (($burgelijke_staat_aanvrager == samenwonend) OR ($burgelijke_staat_aanvrager == gehuwdgvg) OR ($burgelijke_staat_aanvrager == gehuwdhw))
{
if((empty($voorletters_partner)) OR (strlen($voorletters_partner) < 1) OR (eregi(">", $voorletters_partner)))
{
$fout .= "U bent vergeten de voorletters van uw partner in te vullen! <BR>";
unset($voorletters_partner);
$fout_vakje_voorletters_partner = "input_fout";
$fout_text_voorletters_partner = "#FF0000";
}
if((empty($achternaam_partner)) OR (strlen($achternaam_partner) < 1) OR (eregi(">", $achternaam_partner)))
{
$fout .= "U bent vergeten de achternaam van uw partner in te vullen! <BR>";
unset($achternaam_partner);
$fout_vakje_achternaam_partner = "input_fout";
$fout_text_achternaam_partner = "#FF0000";
}
if((empty($geslacht_partner)) OR (strlen($geslacht_partner) < 1) OR (eregi(">", $geslacht_partner)))
{
$fout .= "U bent vergeten het geslacht van uw partner in te vullen! <BR>";
unset($geslacht_partner);
$fout_vakje_geslacht_partner = "input_fout";
$fout_text_geslacht_partner = "#FF0000";
}
if((empty($geboortedatum_partner)) OR (strlen($geboortedatum_partner) < 1) OR (eregi(">", $geboortedatum_partner)))
{
$fout .= "U bent vergeten de geboortedatum van uw partner in te vullen! <BR>";
unset($geboortedatum_partner);
$fout_vakje_geboortedatum_partner = "input_fout";
$fout_text_geboortedatum_partner = "#FF0000";
}
if((empty($straat)) OR (strlen($straat) < 3) OR (eregi(">", $straat)))
{
$fout .= "U bent vergeten uw straatadres in te vullen! <BR>";
unset($straat);
$fout_vakje_straat = "input_fout";
$fout_text_straat = "#FF0000";
}
if((empty($huisnummer)) OR (strlen($huisnummer) < 1) OR (eregi(">", $huisnummer)))
{
$fout .= "U bent vergeten uw huisnummer in te vullen! <BR>";
unset($huisnummer);
$fout_vakje_huisnummer = "input_fout";
$fout_text_huisnummer = "#FF0000";
}
if((empty($postcode)) OR (strlen($postcode) < 2) OR (eregi(">", $postcode)))
{
$fout .= "U bent vergeten uw postcode in te vullen! <BR>";
unset($postcode);
$fout_vakje_postcode = "input_fout";
$fout_text_postcode = "#FF0000";
}
if((empty($woonplaats)) OR (strlen($woonplaats) < 3) OR (eregi(">", $woonplaats)))
{
$fout .= "U bent vergeten uw woonplaats in te vullen! <BR>";
unset($woonplaats);
$fout_vakje_woonplaats = "input_fout";
$fout_text_woonplaats = "#FF0000";
}
if((empty($woonachtig)) OR (strlen($woonachtig) < 3) OR (eregi(">", $woonachtig)))
{
$fout .= "U bent vergeten in te vullen hoelang u woonachtig bent op het opgegeven adres! <BR>";
unset($woonachtig);
$fout_vakje_woonachtig = "input_fout";
$fout_text_woonachtig = "#FF0000";
}
if((empty($telefoonnummer)) OR (strlen($telefoonnummer) < 3) OR (eregi(">", $telefoonnummer)))
{
$fout .= "U bent vergeten uw telefoonnummer in te vullen! <BR>";
unset($telefoonnummer);
$fout_vakje_telefoonnummer = "input_fout";
$fout_text_telefoonnummer = "#FF0000";
}
if((empty($mobiel)) OR (strlen($mobiel) < 3) OR (eregi(">", $mobiel)))
{
$fout .= "U bent vergeten uw mobiele telefoonnummer in te vullen! <BR>";
unset($mobiel);
$fout_vakje_mobiel = "input_fout";
$fout_text_mobiel = "#FF0000";
}
if((empty($email)) OR (strlen($email) < 7) OR (eregi(">", $email)))
{
$fout .= "U bent vergeten uw e-mailadres in te vullen! <BR>";
unset($email);
$fout_vakje_email = "input_fout";
$fout_text_email = "#FF0000";
}
elseif(checkmail($email) == 0)
{
$fout .= "Vul een correct e-mail adres in! <BR>";
unset($email);
$fout_vakje_email = "input_fout";
$fout_text_email = "#FF0000";
}
if((empty($beroep_aanvrager)) OR (strlen($beroep_aanvrager) < 3) OR (eregi(">", $beroep_aanvrager)))
{
$fout .= "U bent vergeten uw beroep in te vullen! <BR>";
unset($beroep_aanvrager);
$fout_vakje_beroep_aanvrager = "input_fout";
$fout_text_beroep_aanvrager = "#FF0000";
}
if((empty($brutoinkomen_aanvrager)) OR (strlen($brutoinkomen_aanvrager) < 3) OR (eregi(">", $brutoinkomen_aanvrager)))
{
$fout .= "U bent vergeten uw inkomen in te vullen! <BR>";
unset($brutoinkomen_aanvrager);
$fout_vakje_brutoinkomen_aanvrager = "input_fout";
$fout_text_brutoinkomen_aanvrager = "#FF0000";
}
if((empty($dienstverband_aanvrager)) OR (strlen($dienstverband_aanvrager) < 3) OR (eregi(">", $dienstverband_aanvrager)))
{
$fout .= "U bent vergeten uw dienstverband in te vullen! <BR>";
unset($dienstverband_aanvrager);
$fout_vakje_dienstverband_aanvrager = "input_fout";
$fout_text_dienstverband_aanvrager = "#FF0000";
}
if((empty($naam_werkgever_aanvrager)) OR (strlen($naam_werkgever_aanvrager) < 3) OR (eregi(">", $naam_werkgever_aanvrager)))
{
$fout .= "U bent vergeten de naam van uw werkgever in te vullen! <BR>";
unset($naam_werkgever_aanvrager);
$fout_vakje_naam_werkgever_aanvrager = "input_fout";
$fout_text_naam_werkgever_aanvrager = "#FF0000";
}
if((empty($plaats_werkgever_aanvrager)) OR (strlen($plaats_werkgever_aanvrager) < 3) OR (eregi(">", $plaats_werkgever_aanvrager)))
{
$fout .= "U bent vergeten de plaatsnaam van uw werkgever in te vullen! <BR>";
unset($plaats_werkgever_aanvrager);
$fout_vakje_plaats_werkgever_aanvrager = "input_fout";
$fout_text_plaats_werkgever_aanvrager = "#FF0000";
}
if((empty($beroep_partner)) OR (strlen($beroep_partner) < 3) OR (eregi(">", $beroep_partner)))
{
$fout .= "U bent vergeten uw beroep in te vullen! <BR>";
unset($beroep_partner);
$fout_vakje_beroep_partner = "input_fout";
$fout_text_beroep_partner = "#FF0000";
}
if((empty($brutoinkomen_partner)) OR (strlen($brutoinkomen_partner) < 3) OR (eregi(">", $brutoinkomen_partner)))
{
$fout .= "U bent vergeten uw inkomen in te vullen! <BR>";
unset($brutoinkomen_partner);
$fout_vakje_brutoinkomen_partner = "input_fout";
$fout_text_brutoinkomen_partner = "#FF0000";
}
if((empty($dienstverband_partner)) OR (strlen($dienstverband_partner) < 3) OR (eregi(">", $dienstverband_partner)))
{
$fout .= "U bent vergeten uw dienstverband in te vullen! <BR>";
unset($dienstverband_partner);
$fout_vakje_dienstverband_partner = "input_fout";
$fout_text_dienstverband_partner = "#FF0000";
}
if((empty($naam_werkgever_partner)) OR (strlen($naam_werkgever_partner) < 3) OR (eregi(">", $naam_werkgever_partner)))
{
$fout .= "U bent vergeten de naam van uw werkgever in te vullen! <BR>";
unset($naam_werkgever_partner);
$fout_vakje_naam_werkgever_partner = "input_fout";
$fout_text_naam_werkgever_partner = "#FF0000";
}
if((empty($plaats_werkgever_partner)) OR (strlen($plaats_werkgever_partner) < 3) OR (eregi(">", $plaats_werkgever_partner)))
{
$fout .= "U bent vergeten de plaatsnaam van uw werkgever in te vullen! <BR>";
unset($plaats_werkgever_partner);
$fout_vakje_plaats_werkgever_partner = "input_fout";
$fout_text_plaats_werkgever_partner = "#FF0000";
}
if((empty($hypotheekbedrag)) OR (strlen($hypotheekbedrag) < 3) OR (eregi(">", $hypotheekbedrag)) )
{
$fout .= "U bent vergeten het hypotheekbedrag in te vullen! <BR>";
unset($hypotheekbedrag);
$fout_vakje_hypotheekbedrag = "input_fout";
$fout_text_hypotheekbedrag = "#FF0000";
}
if((empty($onderwerp)) OR (strlen($onderwerp) < 3) OR (eregi(">", $onderwerp)) )
{
$fout .= "U bent vergeten het soort aankoop in te vullen! <BR>";
unset($onderwerp);
$fout_vakje_onderwerp = "input_fout";
$fout_text_onderwerp = "#FF0000";
}
}
else
{
if((empty($straat)) OR (strlen($straat) < 3) OR (eregi(">", $straat)))
{
$fout .= "U bent vergeten uw straatadres in te vullen! <BR>";
unset($straat);
$fout_vakje_straat = "input_fout";
$fout_text_straat = "#FF0000";
}
if((empty($huisnummer)) OR (strlen($huisnummer) < 1) OR (eregi(">", $huisnummer)))
{
$fout .= "U bent vergeten uw huisnummer in te vullen! <BR>";
unset($huisnummer);
$fout_vakje_huisnummer = "input_fout";
$fout_text_huisnummer = "#FF0000";
}
if((empty($postcode)) OR (strlen($postcode) < 2) OR (eregi(">", $postcode)))
{
$fout .= "U bent vergeten uw postcode in te vullen! <BR>";
unset($postcode);
$fout_vakje_postcode = "input_fout";
$fout_text_postcode = "#FF0000";
}
if((empty($woonplaats)) OR (strlen($woonplaats) < 3) OR (eregi(">", $woonplaats)))
{
$fout .= "U bent vergeten uw woonplaats in te vullen! <BR>";
unset($woonplaats);
$fout_vakje_woonplaats = "input_fout";
$fout_text_woonplaats = "#FF0000";
}
if((empty($woonachtig)) OR (strlen($woonachtig) < 3) OR (eregi(">", $woonachtig)))
{
$fout .= "U bent vergeten in te vullen hoelang u woonachtig bent op het opgegeven adres! <BR>";
unset($woonachtig);
$fout_vakje_woonachtig = "input_fout";
$fout_text_woonachtig = "#FF0000";
}
if((empty($telefoonnummer)) OR (strlen($telefoonnummer) < 3) OR (eregi(">", $telefoonnummer)))
{
$fout .= "U bent vergeten uw telefoonnummer in te vullen! <BR>";
unset($telefoonnummer);
$fout_vakje_telefoonnummer = "input_fout";
$fout_text_telefoonnummer = "#FF0000";
}
if((empty($mobiel)) OR (strlen($mobiel) < 3) OR (eregi(">", $mobiel)))
{
$fout .= "U bent vergeten uw mobiele telefoonnummer in te vullen! <BR>";
unset($mobiel);
$fout_vakje_mobiel = "input_fout";
$fout_text_mobiel = "#FF0000";
}
if((empty($email)) OR (strlen($email) < 7) OR (eregi(">", $email)))
{
$fout .= "U bent vergeten uw e-mailadres in te vullen! <BR>";
unset($email);
$fout_vakje_email = "input_fout";
$fout_text_email = "#FF0000";
}
elseif(checkmail($email) == 0)
{
$fout .= "Vul een correct e-mail adres in! <BR>";
unset($email);
$fout_vakje_email = "input_fout";
$fout_text_email = "#FF0000";
}
if((empty($beroep_aanvrager)) OR (strlen($beroep_aanvrager) < 3) OR (eregi(">", $beroep_aanvrager)))
{
$fout .= "U bent vergeten uw beroep in te vullen! <BR>";
unset($beroep_aanvrager);
$fout_vakje_beroep_aanvrager = "input_fout";
$fout_text_beroep_aanvrager = "#FF0000";
}
if((empty($brutoinkomen_aanvrager)) OR (strlen($brutoinkomen_aanvrager) < 3) OR (eregi(">", $brutoinkomen_aanvrager)))
{
$fout .= "U bent vergeten uw inkomen in te vullen! <BR>";
unset($brutoinkomen_aanvrager);
$fout_vakje_brutoinkomen_aanvrager = "input_fout";
$fout_text_brutoinkomen_aanvrager = "#FF0000";
}
if((empty($dienstverband_aanvrager)) OR (strlen($dienstverband_aanvrager) < 3) OR (eregi(">", $dienstverband_aanvrager)))
{
$fout .= "U bent vergeten uw dienstverband in te vullen! <BR>";
unset($dienstverband_aanvrager);
$fout_vakje_dienstverband_aanvrager = "input_fout";
$fout_text_dienstverband_aanvrager = "#FF0000";
}
if((empty($naam_werkgever_aanvrager)) OR (strlen($naam_werkgever_aanvrager) < 3) OR (eregi(">", $naam_werkgever_aanvrager)))
{
$fout .= "U bent vergeten de naam van uw werkgever in te vullen! <BR>";
unset($naam_werkgever_aanvrager);
$fout_vakje_naam_werkgever_aanvrager = "input_fout";
$fout_text_naam_werkgever_aanvrager = "#FF0000";
}
if((empty($plaats_werkgever_aanvrager)) OR (strlen($plaats_werkgever_aanvrager) < 3) OR (eregi(">", $plaats_werkgever_aanvrager)))
{
$fout .= "U bent vergeten de plaatsnaam van uw werkgever in te vullen! <BR>";
unset($plaats_werkgever_aanvrager);
$fout_vakje_plaats_werkgever_aanvrager = "input_fout";
$fout_text_plaats_werkgever_aanvrager = "#FF0000";
}
{
$fout .= "U bent vergeten het hypotheekbedrag in te vullen! <BR>";
unset($hypotheekbedrag);
$fout_vakje_hypotheekbedrag = "input_fout";
$fout_text_hypotheekbedrag = "#FF0000";
}
if((empty($onderwerp)) OR (strlen($onderwerp) < 3) OR (eregi(">", $onderwerp)) )
{
$fout .= "U bent vergeten het soort aankoop in te vullen! <BR>";
unset($onderwerp);
$fout_vakje_onderwerp = "input_fout";
$fout_text_onderwerp = "#FF0000";
}
}
if((empty($eigen_woning)) OR (strlen($eigen_woning) < 1) OR (eregi(">", $eigen_woning)) )
{
$fout .= "U bent vergeten of het om eigen woning gaat in te vullen! <BR>";
unset($eigen_bewoning);
$fout_vakje_eigen_woning = "input_fout";
$fout_text_eigen_woning = "#FF0000";
}
if ($eigen_woning == ja)
{
if((empty($maandlasten)) OR (strlen($maandlasten) < 2) OR (eregi(">", $maandlasten)) )
{
$fout .= "U bent vergeten uw maandlasten in te vullen! <BR>";
unset($maandlasten);
$fout_vakje_maandlasten = "input_fout";
$fout_text_maandlasten = "#FF0000";
}
if((empty($verkoopwaarde)) OR (strlen($verkoopwaarde) < 2) OR (eregi(">", $verkoopwaarde)) )
{
$fout .= "U bent vergeten de verkoopwaarde in te vullen! <BR>";
unset($verkoopwaarde);
$fout_vakje_verkoopwaarde = "input_fout";
$fout_text_verkoopwaarde = "#FF0000";
}
if((empty($nogaftelossen)) OR (strlen($nogaftelossen) < 2) OR (eregi(">", $nogaftelossen)) )
{
$fout .= "U bent vergeten wat u nog moet aflossen in in te vullen! <BR>";
unset($nogaftelossen);
$fout_vakje_nogaftelossen = "input_fout";
$fout_text_nogaftelossen = "#FF0000";
}
}
if(!$fout_text)
{
unset($fout_text_voorletters_aanvrager);
unset($fout_text_achternaam_aanvrager);
unset($fout_text_geslacht_aanvrager);
unset($fout_text_geboortedatum_aanvrager);
unset($fout_text_burgelijke_staat_aanvrager);
unset($fout_text_voorletters_partner);
unset($fout_text_achternaam_partner);
unset($fout_text_geslacht_partner);
unset($fout_text_geboortedatum_partner);
unset($fout_text_burgelijke_staat_partner);
unset($fout_text_straat);
unset($fout_text_huisnummer);
unset($fout_text_postcode);
unset($fout_text_woonplaats);
unset($fout_text_woonachtig);
unset($fout_text_telefoonnummer);
unset($fout_text_mobiel);
unset($fout_text_email);
unset($fout_text_beroep_aanvrager);
unset($fout_text_brutoinkomen_aanvrager);
unset($fout_text_dienstverband_aanvrager);
unset($fout_text_naam_werkgever_aanvrager);
unset($fout_text_plaats_werkgever_aanvrager);
unset($fout_text_beroep_partner);
unset($fout_text_brutoinkomen_partner);
unset($fout_text_dienstverband_partner);
unset($fout_text_naam_werkgever_partner);
unset($fout_text_plaats_werkgever_partner);
unset($fout_text_hypotheekbedrag);
unset($fout_text_onderwerp);
unset($fout_text_eigen_woning);
unset($fout_text_maandlasten);
unset($fout_text_verkoopwaarde);
unset($fout_text_nogaftelossn);
}
if(!$fout_vakje)
{
unset($fout_vakje_voorletters_aanvrager);
unset($fout_vakje_achternaam_aanvrager);
unset($fout_vakje_geslacht_aanvrager);
unset($fout_vakje_geboortedatum_aanvrager);
unset($fout_vakje_burgelijke_staat_aanvrager);
unset($fout_vakje_voorletters_partner);
unset($fout_vakje_achternaam_partner);
unset($fout_vakje_geslacht_partner);
unset($fout_vakje_geboortedatum_partner);
unset($fout_vakje_burgelijke_staat_partner);
unset($fout_vakje_straat);
unset($fout_vakje_huisnummer);
unset($fout_vakje_postcode);
unset($fout_vakje_woonplaats);
unset($fout_vakje_woonachtig);
unset($fout_vakje_telefoonnummer);
unset($fout_vakje_mobiel);
unset($fout_vakje_email);
unset($fout_vakje_beroep_aanvrager);
unset($fout_vakje_brutoinkomen_aanvrager);
unset($fout_vakje_dienstverband_aanvrager);
unset($fout_vakje_naam_werkgever_aanvrager);
unset($fout_vakje_plaats_werkgever_aanvrager);
unset($fout_vakje_beroep_partner);
unset($fout_vakje_brutoinkomen_partner);
unset($fout_vakje_dienstverband_partner);
unset($fout_vakje_naam_werkgever_partner);
unset($fout_vakje_plaats_werkgever_partner);
unset($fout_vakje_hypotheekbedrag);
unset($fout_vakje_eigen_woning);
unset($fout_vakje_onderwerp);
unset($fout_vakje_maandlasten);
unset($fout_vakje_verkoopwaarde);
unset($fout_vakje_nogaftelossen);
}
if(!empty($fout))
{
echo "<font color=\"#FF0000\"> $fout </font>"; // Weergeven van de fout(en)
}
else
{
mail($wm_email,$onderwerp,$message,$headers);
// Bericht als mail succesvol is verzonden
echo "<head><link href=\"style.css\" rel=\"stylesheet\" type=\"text/css\"></head>";
echo "<BR>Geachte heer, mevrouw,<BR>";
echo "<BR>Uw hypotheekaanvraag is succesvol verzonden!<BR>";
echo "<BR>Indien van toepassing zullen wij telefonisch met u contact opnemen.<BR>";
echo "<BR>Wij vertrouwen erop u een passende aanbieding te kunnen doen.<BR>";
echo "Met vriendelijke groeten,<BR>";
echo "<BR> <BR>";
echo "<BR> <BR>";
echo "<B>".$wm_naam."</B>";
// cookie zetten tegen spam
setcookie("mailformulier",1,time()+($Anti_Spam*60));
// formulier wordt niet weer getoond
$Formulier = FALSE;
header("refresh:3;url=".$site."");
}
}
}
else {
$Formulier = FALSE;
echo "<head><link href=\"style.css\" rel=\"stylesheet\" type=\"text/css\"></head>";
echo "<center><h2> Spam Beveiliging </h2><BR>";
echo "Je kunt maar eens in de $Anti_Spam minuten een e-mail versturen!</center>";
header("refresh:3;url=".$site."");
}
if(!isset($Formulier))
{
?>
Ik hoor het wel.
Greetz,
Wellicht dat iemand mij kan aangeven wat ik verkeerd heb gedaan zodat ik het kan aanpassen.
Als je derest wil zien laat het mij weten dan mail ik het volledige html gedeelte.
Alvast bedankt,
Lloyd
2
3
4
5
6
7
8
9
if((($burgelijkestaat == "samenwonend") OR ($burgelijkestaat == "gehuwd")) && ((empty($voorletters_partner)) OR (strlen($voorletters_partner) < 1) OR (eregi(">", $voorletters_partner))))
{
$fout .= "U bent vergeten de voorletters van uw partner in te vullen! <BR>";
unset($voorletters_partner);
$fout_vakje_voorletters_partner = "input_fout";
$fout_text_voorletters_partner = "#FF0000";
}
?>
2
3
if (($burgelijke_staat_aanvrager == samenwonend) OR ($burgelijke_staat_aanvrager == gehuwdgvg) OR ($burgelijke_staat_aanvrager == gehuwdhw))
?>
en dan volgt het gedeelte wat het programma moet doorlopen met de gegevens van de partner etcetera, etcetera. Zie vorige posting. Heb gebruik gemaakt van een selectbox, maar op een of andere manier wordt de geselecteerde data niet vergeleken met gehuwdgvg of gehuwdhw. Ik probeer het met hetgeen jij hebt.
Ik maak gebruik van een selectbox en wat ik ook doe hij pakt het niet. Zie onder...
<TR>
<TD WIDTH="51%" STYLE="background-color: rgb(153,153,204);" HEIGHT=18>
<P><SPAN STYLE="font-family: Verdana,Tahoma,Arial,Helvetica,Sans-serif,sans-serif; font-size: xx-small;"><font color=""> Burgelijke staat:</SPAN></P>
</TD>
<TD WIDTH="48%" STYLE="background-color: rgb(153,153,204);">
<P><SPAN STYLE="font-family: Verdana,Tahoma,Arial,Helvetica,Sans-serif,sans-serif; font-size: xx-small;">
<SELECT NAME="burgelijke_staat_aanvrager">
<option >Maak een keuze</option>
<option >Ongehuwd</option>
<option >Samenwonend</option>
<option >Gehuwd (gemeenschap van goederen)</option>
<option >Gehuwd (huwelijkse voorwaarden)</option>
<option >Gescheiden</option>
</SELECT>
</SPAN></P>
</TD>
</TR>
Als ik dus alleen gehuwd selecteer en ik druk op verzenden dan krijg ik geen meldingen dat ik de partnergegevens ook moet invullen. Terwijl het wel zou moeten.
ik heb de volgende index
<div class="home">
2
3
4
5
6
7
8
9
10
11
switch($_GET ['id']){
case "home": include "home.php" ; break;
case "over_greatday": include "over_greatday.php" ; break;
case "programma": include "programma.php" ; break;
case "contact": include "contact.php" ; break;
case "routebeschrijving": include "routebeschrijving.php" ; break;
default: include "home.php" ; break ;
}
?>
</div>
het formulier staat op contact.php
Wie kan mij helpen,.....
<form method="post" action="index.php?id=contact">
ipv
<form method="post" action="">
misschien heeft iemand er nog iets aan
<tr><td>Onderwerp:</td>
<td>
<select name="onderwerp" id="onderwerp">
<option value="Algemeen" >Algemeen</option>
<option value="2de" >2de</option>
<option value="3de" >3de</option>
</select>
</td></tr>
********VUL HIER DE "LOPENDE" TEKST IN
**********TEKST
Vraagje : formulier opgeslagen als mai.php en ge include binnen een andere php pagina
ik krijg devolgende foutmelding:
(website is vervangen door mijndomein)
wie helpt ?
Peter
Warning: Cannot add header information - headers already sent by (output started at /home/httpd/vhosts/mijndomein.nl/httpdocs/meta.php:9) in /home/httpd/vhosts/mijndomein.nl/httpdocs/mail.php on line 5
Warning: Cannot add header information - headers already sent by (output started at /home/httpd/vhosts/mijndomein.nl/httpdocs/meta.php:9) in /home/httpd/vhosts/mijndomein.nl/httpdocs/mail.php on
ik heb mijn pagina's opgebouwd met verschillende includes zoals metatags.php, menu.php
jou advies in de bewuste pagina aangebracht, daarna ook geprobeerd in andere zoals index.php maar helaas.
(je mag me ook rechtstreeks mailen, want ook van die ob_start functie wil ik wel wat meer weten)
groet Peter
Ik heb je scriptje verder uitgebreid met meerdere velden oa telefoon.
ik wil dit echter een veld maken met alleen nummers.
Hoe doe ik dat.ik heb een test laten uitvoeren op "if not numeric"maar dat werkte niet.
Volgens mij moet ik dat aangeven als ik de variabele opgeef.
( ik weet , ik moet nog veel leren)
groet Peter
Nee ik was niet online want ik ben namelijk net thuis :\
maarja ik heb toevallig laatst nog een tel checker gemaakt aub:
Dit zet je gwoon onder die mail checker:
En hiermee check je of correct is bijv:
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
if((empty($telefoonnummer)) OR (strlen($telefoonnummer) < 3) OR (eregi(">", $telefoonnummer)))
{
$fout .= "U bent vergeten uw telefoonnummer in te vullen! <BR>";
unset($telefoonnummer);
$fout_vakje_telefoonnummer = "input_fout";
$fout_text_telefoonnummer = "#FF0000";
}
elseif(checktel($telefoonnummer) == 0)
{
$fout .= "Uw telefoonnummer is niet correct <BR>";
unset($telefoonnummer);
$fout_vakje_telefoonnummer = "input_fout";
$fout_text_telefoonnummer = "#FF0000";
}
?>
ik heb het ertussen gezet, (natuurlijk de
2
3
4
5
6
7
8
en de stukjes ut_text_telefoonnummer = "#FF0000"; veranderd in text_fout zoals je in het oorspronkelijke script ook hebt.
Toch moet ik nog eens gaan puzzelen: bij aanvang wordt het vakje telefoon al meteen rood en na bewust foutief ingeven van een aantal velden en ook telefoon wordt telefoon zwart en de rest rood.
Maar dat moet me toch wel lukken dacht ik zo.
Ik heb ook nog geprobeerd om bij het definieren van de variabele een inter af te dwingen, maar ik zal wel iets fout hebben gedaan.
Groet Peter
(Ik heb niet alles gelezen hoor maar....)
Heeft er nog nooit iemand gekeken naar de functie:
checkdnsrr ( string host [, string type]) ???
Volgens mij werkt dat veel beter, omdat je met gethostbyname, alleen kan controleren of het ip-adres bij de domainnaam hoort.
Met de functie: checkdnsrr ( string host [, string type]) , kan je ook controleren of er een DNS MX record voor het betreffende domein bestaat, en ben je veel efficienter bezig!!!
Succes ermee!!
probleem met de rode vakjes opgelost, was even puzzelen maar we zijn eruit.
je eerste stukje code komt na mail checker
je tweede stukje had ik eronder geplaatst maar heb ik nu onder de verzendcontrole (dus bij naam,woonplaats etc gezet.
werkt nu wel goed.
Als je me je mailadres geeft, stuur ik je de link, kan je kijken.
groet Peter
Ik kom er niet achter welke functie je dan moet gebruiken.
ik ben met wat dingen bezig geweest maar er ontbreekt wat, kan iemand mij verder helpen? de rest van de controle van de andere velden blijft tog gewoon hetzelfde?
dit is wat ik had geprobeerd:
if((checked($checkbox)) == (false ))
{
$fout .= "U bent vergeten de checkbox in te vullen! <BR>";
unset($checkbox);
$fout_vakje_checkbox = "input_fout";
$fout_text_checkbox = "#FF0000";
}
Ik heb de .php en de .css gekopieerd en in kladblok gezet.
Ik heb het formulier HTML in een lege frontpage pagina gezet.
(Ben ik nog op de goede weg of ben ik nu al verkeerd bezig).
Daarna in één mapje geupload naar m'n site, ik zie hem wel maar als ik hem wil versturen zegt hij dat hij het bestand niet kan vinden.
Kan iemand mij even verder helpen en is dit formulier ook idd verder aan te passen of heb ik alleen die illusie.
Groeten en iedereen nog de beste wensen voor het nieuwe jaar.
Dan nog ff een paar vraagjes:
Even de variabelen veranderen (welke variabelen allemaal?).
ob_start(); // Voor Cookie setten (wat moet ik hiermee?).
// Headers zetten zodat de de inhoud niet word gecashed (wat wordt hiermee bedoeld?).
2: Boven aan je pagina zetten (wel tussen PHP-tags, dus waarschijnlijk
3: Dit wordt door het script gedaan zodat deze altijd een verse kopie van de server opvraagt waneer iemand de pagina wil bekijken.
Verder, het formulier zit er al in, met als voordeel dat het foutmeldingen kan geven waneer een ingevulde waarde niet klopt. Via frontpage-pagina's kan dit niet. Het makkelijkst is dit aan te passen in de bron zelf, dus geen frontpage, gewoon kladblok, of nog beter, een editor die je code een kleurtje geeft zoals bijvoorbeeld notepad++. Dit lijkt heel moeilijk op het eerste gezicht, maar het is vrij simpel te doen.
En je moet even zeker weten dat je server PHP ondersteund, anders ben je nu voor niets bezig, en dat zou zonde zijn :-)
Hij doet het niet bij mij, als ik het formulier heb ingevuld krijg ik een witte pagina en wordt hij niet verzonden. Kan iemand mij helpen. mijn website waar hij staat: http://gameweb.wyger.nl/contact.php
Als ik nu $html = FALSE; verander naar $html = TRUE;
Krijg ik een mailtje binnen met de HTML CODE ipv van een opgemaakt mailtje.
UPDATE:
Zet nooit \r in de headers, outlook kan er namelijk niet mee overweg en geeft een source dump als message!
Hij deed het eerst geweldiggg! Maar sinds kort geeft hij een foutmelding..
Waarom weet ik dus niet. Misschie dat jullie het probleem zien.
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
### Konfiguration ###
# Bitte passen Sie die folgenden Werte an, bevor Sie das Script benutzen!
# An welche Adresse sollen die Mails gesendet werden?
$strEmpfaenger = '[email protected]';
# Welche Adresse soll als Absender angegeben werden?
# (Manche Hoster lassen diese Angabe vor dem Versenden der Mail ueberschreiben)
$strFrom = '"......" <[email protected]>';
# Welchen Betreff sollen die Mails erhalten?
$strSubject = 'Contact Formulier';
# Zu welcher Seite soll als "Danke-Seite" weitergeleitet werden?
# Wichtig: Sie muessen hier eine gueltige HTTP-Adresse angeben!
$strReturnhtml = 'http://www........org/....../.....php';
# Welche(s) Zeichen soll(en) zwischen dem Feldnamen und dem angegebenen Wert stehen?
$strDelimiter = ":\t";
### Ende Konfiguration ###
if($_POST)
{
$strMailtext = "";
while(list($strName,$value) = each($_POST))
{
if(is_array($value))
{
foreach($value as $value_array)
{
$strMailtext .= $strName.$strDelimiter.$value_array."\n";
}
}
else
{
$strMailtext .= $strName.$strDelimiter.$value."\n";
}
}
if(get_magic_quotes_gpc())
{
$strMailtext = stripslashes($strMailtext);
}
mail($strEmpfaenger, $strSubject, $strMailtext, "From: ".$strFrom)
or die("Foutje!");
header("Location: $strReturnhtml");
exit;
}
?>
<!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" xml:lang="nl">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<meta http-equiv="imagetoolbar" content="no">
<script>
if (window.Event)
document.captureEvents(Event.MOUSEUP);
function nocontextmenu()
{
event.cancelBubble = true
event.returnValue = false;
return false;
}
function norightclick(e)
{
if (window.Event)
{
if (e.which == 2 || e.which == 3)
return false;
}
else
if (event.button == 2 || event.button == 3)
{
event.cancelBubble = true
event.returnValue = false;
return false;
}
}
document.oncontextmenu = nocontextmenu;
document.onmousedown = norightclick;
function disableselect(e){
return false
}
function reEnable(){
return true
}
document.onselectstart=new Function ("return false")
if (window.sidebar){
document.onmousedown=disableselect
document.onclick=reEnable
}
</script>
<form action="" method="post">
E-mail en MSN: [email protected]<br><br>
Naam:<br>
<input type="text" size="20" name="Naam" style="color: #333; font-family: tahoma; font-size: 10px; border: 1px solid #ccc; background-color: white"><br>
E-mail:<br>
<input type="text" size="20" name="Email" style="color: #333; font-family: tahoma; font-size: 10px; border: 1px solid #ccc; background-color: white"><br>
Website:<br>
<input type="text" size="20" value="http://" name="Website" style="color: #333; font-family: tahoma; font-size: 10px; border: 1px solid #ccc; background-color: white"><br>
Bericht:<br>
<input type="text" size="20" name="Bericht" style="color: #333; font-family: tahoma; font-size: 10px; border: 1px solid #ccc; background-color: white"><br><br>
<input type="submit" value="OK" style="color: #333; font-weight : normal; font-family: tahoma; font-size: 10px; border: 1px solid #ccc; padding:2px; background-color: white"> 
<input type="reset" value="Reset" style="color: #333; font-weight : normal; font-family: tahoma; font-size: 10px; border: 1px solid #ccc; padding:2px; background-color: white">
<br><br><a href="javascript: history.back(-2)">TERUG.</a>
</form>
</body>
</html>
Het lukt me alleen om de radiobuttons aan de praat te krijgen. Daarmee bedoel ik: een aangeklikte radiobutton wordt correct verwerkt en in het e-mailbericht verwerkt. De checkboxes krijg ik niet voor elkaar. Kunnen jullie me helpen?
Zie voor het werkende formulier: http://vosim.kirstenvos.nl/formtests/contactform.php
En hierbij het complete script:
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
// geef e-mail adres op van ontvanger
$mail_ontv = "[email protected]";
// is niet 100% !!!
function checkmail($mail)
{
$email_host = explode("@", $mail);
$email_host = $email_host['1'];
$email_resolved = gethostbyname($email_host);
if ($email_resolved != $email_host && eregi("^[0-9a-z]([-_.~]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$mail))
$valid = 1;
return $valid;
}
// als er niet op submit is gedrukt, of als er wel op is gedrukt maar niet alles ingevoerd is
if (!$_POST['submit'] || $_POST['submit'] && (!$_POST['naam'] || !$_POST['mail'] || !$_POST['organisatie'] || !checkmail($_POST['mail']) || !$_POST['msggs'] || !$_POST['onderwerp']))
{
if ($_POST['submit'] && (!$_POST['naam'] || !$_POST['mail'] || !$_POST['organisatie'] || !checkmail($_POST['mail']) || !$_POST['msggs'] || !$_POST['onderwerp']))
{
echo "Je bent je naam, organisatie, e-mail adres, typering vraagstuk of toelichting vergeten in te vullen. Ook kan het zijn ";
echo "dat je een verkeerd e-mail adres hebt ingevuld.<p>";
}
// form + tabel
echo "<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
echo "<form method=\"POST\" ACTION=\"" . $_SERVER['PHP_SELF'] . "\">";
// verzoek
echo "<tr><td><input type=\"checkbox\" name=\"verzoek[]\" value=\"ontdekking\">Hou mij op de hoogte van nieuwe ontwikkelingen.</td></tr>
<tr><td><input type=\"checkbox\" name=\"verzoek[]\" value=\"contact\">Neem contact met mij op.</td></tr>" . $_POST['verzoek[]'] . "</checkbox>";
// space
echo "<tr><td> </td></tr>";
// aanhef
echo "<tr><td><input type=\"radio\" name=\"aanhef\" value=\"de heer\">De heer</td></tr>
<tr><td><input type=\"radio\" name=\"aanhef\" value=\"mevrouw\">Mevrouw</td></tr>" . htmlentities($_POST['aanhef']) . "</radio>";
// space
echo "<tr><td> </td></tr>";
// naam
echo "<tr><td>Naam:</td></tr>";
echo "<tr><td><input type=\"text\" name=\"naam\" value=\"" . $_POST['naam'] . "\"></td></tr>";
// space
echo "<tr><td> </td></tr>";
// organisatie
echo "<tr><td>Organisatie:</td></tr>";
echo "<tr><td><input type=\"text\" name=\"organisatie\" value=\"" . $_POST['organisatie'] . "\"></td></tr>";
// space
echo "<tr><td> </td></tr>";
echo "<tr><td>E-mail adres:</td></tr>";
echo "<tr><td><input type=\"text\" name=\"mail\" value=\"" . $_POST['mail'] . "\"></td></tr>";
// space
echo "<tr><td> </td></tr>";
// telefoon
echo "<tr><td>Telefoonnummer:</td></tr>";
echo "<tr><td><input type=\"text\" name=\"telefoon\" value=\"" . $_POST['telefoon'] . "\"></td></tr>";
// space
echo "<tr><td> </td></tr>";
echo "<tr><td>Typering vraagstuk:</td></tr>";
echo "<tr><td><input type=\"text\" name=\"onderwerp\" value=\"" . $_POST['onderwerp'] . "\"></td></tr>";
// space
echo "<tr><td> </td></tr>";
echo "<tr><td>Toelichting:</td></tr>";
echo "<tr><td><TEXTAREA name=\"msggs\" ROWS=\"6\" COLS=\"45\">" . htmlentities($_POST['msggs']) . "</TEXTAREA></td></tr>";
// space
echo "<tr><td> </td></tr>";
// button
echo "<tr><td> </td></tr>";
echo "<tr><td><input type=\"submit\" name=\"submit\" value=\"Versturen\"></td></tr>";
// sluit form + tabel
echo "</form>";
echo "</table>";
}
// versturen naar
else
{
// set datum
$datum = date("d.m.Y H:i");
// set ip
$ip = $_SERVER['REMOTE_ADDR'];
$inhoud_mail = "===================================================\n";
$inhoud_mail .= "Ingevuld contactformulier\n";
$inhoud_mail .= "===================================================\n\n";
$inhoud_mail .= "Verzoek: " . htmlentities($_POST['verzoek[]']) ."\n";
$inhoud_mail .= "Aanhef: " . htmlentities($_POST['aanhef']) ."\n";
$inhoud_mail .= "Naam: " . $_POST['naam'] . "\n";
$inhoud_mail .= "Organisatienaam: " . $_POST['organisatie'] . "\n";
$inhoud_mail .= "E-mail adres: " . $_POST['mail'] . "\n";
$inhoud_mail .= "Telefoonnummer: " . $_POST['telefoon'] . "\n";
$inhoud_mail .= "Bericht:\n";
$inhoud_mail .= $_POST['msggs'] . "\n\n";
$inhoud_mail .= "Verstuurd op $datum via het ip " . $ip . "\n\n";
$inhoud_mail .= "===================================================\n\n";
// --------------------
// spambot protectie
// ------
// van de tutorial: http://www.phphulp.nl/php/tutorials/10/340/
// ------
$headers = "From: " . $_POST['naam'] . " <" . $_POST['mail'] . ">";
$headers = stripslashes($headers);
$headers = str_replace("\n", "", $headers); // Verwijder \n
$headers = str_replace("\r", "", $headers); // Verwijder \r
$headers = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $headers)); // Slashes van quotes
$_POST['onderwerp'] = str_replace("\n", "", $_POST['onderwerp']); // Verwijder \n
$_POST['onderwerp'] = str_replace("\r", "", $_POST['onderwerp']); // Verwijder \r
$_POST['onderwerp'] = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $_POST['onderwerp'])); // Slashes van quotes
mail($mail_ontv, $_POST['onderwerp'], $inhoud_mail, $headers);
echo "<p>Dank u voor uw reactie. Uw bericht is naar mij onderweg.</p>";
}
?>
ik heb zelf ook wat dingen toegevoegt maar bij sominge als je iets in vult komt er dat je bent vergeeten om het in te vullen :
hier is mijn script :
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
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
ob_start(); // Voor Cookie setten
// Headers zetten zodat de de inhoud niet word gecashed
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
// Config Gedeelte
$site = "http://www.legerarmy.nl"; // Site waarnaar je terug gaat als je een bericht hebt achtergelaten
$wm_naam = "[L.A] Mitch"; // Webmaster naam
$wm_email = "[email protected]"; // Webmaster E-mail
$Anti_Spam = "60"; // Anti Spam Tijd in Minuten ( Voer "0" om de Spam Beveiliging uit te zetten )
$html = FALSE; // Een HTML email
// Hierna hoef je niks meer te veranderen!
$naam = $_POST['naam'];
$email = $_POST['email'];
$Nick = $_POST['Nick'];
$age = $_POST['age'];
$msn = $_POST['msn'];
$country = $_POST['country'];
$game = $_POST['game'];
$xfire = $_POST['xfre'];
$ts = $_POST['ts'];
$beschikbaar = $_POST['beschikbaar'];
$geboortedatum = $_POST['geboortedatum'];
$bericht = $_POST['bericht'];
$bericht_wrap = wordwrap ($bericht, 40, "\n", 1);
// IP van de verstuurder
if(getenv($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ip = getenv($_SERVER['HTTP_X_FORWARDED_FOR']);
} elseif(getenv($_SERVER['HTTP_CLIENT_IP'])) {
$ip = getenv($_SERVER['HTTP_CLIENT_IP']);
} else {
$ip = $_SERVER['REMOTE_ADDR'];
}
$host = gethostbyaddr($ip); // Host van verstuurder
if($html) {
// Headers
$headers = "From: \"Contact Formulier\" <".$wm_naam.">\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "Return-Path: Mail-Error <".$wm_naam.">\r\n";
// Bericht
$message = "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">";
$message .= "<HTML><HEAD>";
$message .= "<META http-equiv=3DContent-Type content=3D\"text/html; = charset=3Dwindows-1252\">";
$message .= "</HEAD><BODY>";
$message .= "<BR> ";
$message .= "<TABLE>";
$message .= "<tr><td>Naam:</td><td>".$naam."</td></tr>";
$message .= "<tr><td>Email:</td><td><a href=\"mailto:".$email."\">".$email."</a></td></tr>";
$message .= "<BR> ";
$message .= "<tr><td>Nick:</td><td>".$Nick."</td></tr>";
$message .= "<tr><td>age:</td><td>".$age."</td></tr>";
$message .= "<tr><td>msn:</td><td>".$msn."</td></tr>";
$message .= "<tr><td>country:</td><td>".$country."</td></tr>";
$message .= "<tr><td>game:</td><td>".$game."</td></tr>";
$message .= "<tr><td>xfire</td><td>".$xfire."</td></tr>";
$message .= "<tr><td>ts:</td><td>".$ts."</td></tr>";
$message .= "<tr><td>ervaaring:</td><td>".$ervaaring."</td></tr>";
$message .= "<tr><td>beschikbaar:</td><td>".$beschikbaar."</td></tr>";
$message .= "<tr><td>geboortedatum:</td><td>".$geboortedatum."</td></tr>";
$message .= "<tr><td>Bericht:</td><td>".$bericht."</td></tr>";
$message .= "<tr><td colspan=\"2\"> </td></tr>";
$message .= "<BR> ";
$message .= "<tr><td>Datum:</td><td>".date("d-m-Y H:i:s")."</td></tr>";
$message .= "<tr><td>IP:</td><td><a href=\"http://sunny.nic.com/cgi-bin/whois?domain=".$ip."\">".$ip."</a></td></tr>";
$message .= "<tr><td>Host:</td><td>".$host."</td></tr>";
$message .= "</TABLE></BODY></HTML>";
}
else {
// Headers
$headers = "From: \"Contact Formulier\" <".$wm_naam.">\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/plain; charset=iso-8859-1";
// Bericht
$message = "Naam: ".$naam." \n";
$message .= "E-mail: ".$email." \n";
$message .= "Nick: ".$Nick." \n";
$message .= "age: ".$age." \n";
$message .= "msn: ".$msn." \n";
$message .= "country: ".$country." \n";
$message .= "game: ".$game." \n";
$message .= "xfire: ".$xfire." \n";
$message .= "ts: ".$ts." \n";
$message .= "ervaaring: ".$ervaaring." \n";
$message .= "beschikbaar: ".$beschikbaar." \n";
$message .= "geboortedatum: ".$geboortedatum." \n";
$message .= "Bericht:\n".$bericht_wrap." \n ";
$message .= " \n ";
$message .= "Datum: ".date("d-m-Y H:i:s")." \n";
$message .= "------------------------------------------------------- \n ";
$message .= "IP: ".$ip." \n ";
$message .= "Host: ".$host." \n ";
}
// Mail Checker
function checkmail($mail)
{
$email_host = explode("@", $mail);
$email_host = $email_host['1'];
$email_resolved = gethostbyname($email_host);
if ($email_resolved != $email_host && eregi("^[0-9a-z]([-_.~]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$mail))
$valid = 1;
return $valid;
}
// kijken of het cookie bestaat, zoja dan wordt het formulier niet getoond.
if(!isset($_COOKIE['mailformulier']))
{
// Alles Controleren Wanneer er op Verzenden wordt gedrukt
if(isset($_POST['verzenden']))
{
$fout = "";
if((empty($naam)) OR (strlen($naam) < 3) OR (eregi(">", $naam)))
{
$fout .= "U bent vergeten uw naam in te vullen! <BR>";
unset($naam);
$fout_vakje_naam = "input_fout";
$fout_text_naam = "text_fout";
}
if((empty($email)) OR (strlen($email) < 7) OR (eregi(">", $email)))
{
$fout .= "U bent vergeten uw e-mail adres in te vullen! <BR>";
unset($email);
$fout_vakje_email = "input_fout";
$fout_text_email = "text_fout";
}
elseif(checkmail($email) == 0)
{
$fout .= "Vul een correct e-mail adres in! <BR>";
unset($email);
$fout_vakje_email = "input_fout";
$fout_text_email = "text_fout";
}
if((empty($Nick)) OR (strlen($Nick) < 3) OR (eregi(">", $Nick)) )
{
$fout .= "U bent vergeten uw Nick name in te vullen! <BR>";
unset($Nick);
$fout_vakje_Nick = "input_fout";
$fout_text_Nick = "text_fout";
}
if((empty($age)) OR (strlen($age) < 3) OR (eregi(">", $age)) )
{
$fout .= "U bent vergeten uw leefentijd in te vullen! <BR>";
unset($age);
$fout_vakje_age = "input_fout";
$fout_text_age = "text_fout";
}
if((empty($msn)) OR (strlen($msn) < 3) OR (eregi(">", $msn)) )
{
$fout .= "U bent vergeten uw msn in te vullen! <BR>";
unset($msn);
$fout_vakje_msn = "input_fout";
$fout_text_msn = "text_fout";
}
if((empty($country)) OR (strlen($country) < 3) OR (eregi(">", $country)) )
{
$fout .= "U bent vergeten om uw land in te vullen! <BR>";
unset($country);
$fout_vakje_country = "input_fout";
$fout_text_country = "text_fout";
}
if((empty($game)) OR (strlen($game) < 3) OR (eregi(">", $game)) )
{
$fout .= "U bent vergeten uw spel type in te vullen (Game) in te vullen! <BR>";
unset($game);
$fout_vakje_game = "input_fout";
$fout_text_game = "text_fout";
}
if((empty($xfire)) OR (strlen($xfire) < 3) OR (eregi(">", $xfire)) )
{
$fout .= "U bent vergeten om uw x-fire in te vullen! <BR>";
unset($xfre);
$fout_vakje_xfire = "input_fout";
$fout_text_xfire = "text_fout";
}
if((empty($ts)) OR (strlen($ts) < 3) OR (eregi(">", $ts)) )
{
$fout .= "U bent vergeten om ts in te vullen! <BR>";
unset($ts);
$fout_vakje_ts = "input_fout";
$fout_text_ts = "text_fout";
}
if((empty($ervaaring)) OR (strlen($ervaaring) < 3) OR (eregi(">", $ervaaring)) )
{
$fout .= "U bent vergeten om uw ervaaring in te vullen! <BR>";
unset($ervaaring);
$fout_vakje_ervaaring = "input_fout";
$fout_text_ervaaring = "text_fout";
}
if((empty($beschikbaar)) OR (strlen($beschikbaar) < 3) OR (eregi(">", $beschikbaar)) )
{
$fout .= "U bent vergeten om uw beschikbaar heid in te vullen! <BR>";
unset($beschikbaar);
$fout_vakje_beschikbaar = "input_fout";
$fout_text_beschikbaar = "text_fout";
}
if((empty($geboortedatum)) OR (strlen($geboortedatum) < 3) OR (eregi(">", $geboortedatum)) )
{
$fout .= "U bent vergeten om uw geboortedatum in te vullen! <BR>";
unset($geboortedatum);
$fout_vakje_geboortedatum = "input_fout";
$fout_text_geboortedatum = "text_fout";
}
if(empty($bericht))
{
$fout .= "U bent vergeten een bericht in te vullen! <BR";
unset($bericht);
$fout_vakje_bericht = "input_fout";
$fout_text_bericht = "text_fout";
}
elseif(strlen($bericht) < 6)
{
$fout .= "Uw bericht is tekort! <BR>";
$fout_vakje_bericht = "input_fout";
$fout_text_bericht = "text_fout";
}
if(!empty($fout))
{
echo "<center><font color=\"#FF0000\"> $fout </font><br>"; // Weergeven van de fout(en)
}
else
{
mail($wm_email,$onderwerp,$message,$headers);
// Bericht als mail succesvol is verzonden
echo "<head><link href=\"style.css\" rel=\"stylesheet\" type=\"text/css\"></head>";
echo "<BR>Uw contact bericht is succesvol verzonden!<BR>";
echo "Er word zo snel mogelijk gereageerd.<BR><BR>";
echo "Met vriendelijke groeten,<BR>";
echo "<B>".$wm_naam."</B>";
// cookie zetten tegen spam
setcookie("mailformulier",1,time()+($Anti_Spam*60));
// formulier wordt niet weer getoond
$Formulier = TRUE;
header("refresh:3;url=".$site."");
}
}
}
else {
$Formulier = FALSE;
echo "<head><link href=\"style.css\" rel=\"stylesheet\" type=\"text/css\"></head>";
echo "<center><h2> Spam Beveiliging </h2><br />";
echo "Je kunt maar eens in de $Anti_Spam minuten een e-mail versturen!
Mail [email protected] voor veranderingen!</center></body></html>";
header("refresh:3;url=".$site."");
}
if(!isset($Formulier))
{
?>
<!DOCTYPE>
<html>
<head>
<link href="style.css" rel="stylesheet" type="text/css" />
<title>Welcome on www.legerarmy.nl/recruit.php fomulier!</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body background="images/0000000033.jpg" style="background-attachment: fixed">
<table class="tabel" border="1" cellpadding="5" cellspacing="0" width="300" style="border-collapse: collapse">
<tr><td><br />
<form method="post" action="<? echo $PHP_SELF; ?>">
<table>
<tr><td> </td><td> </td></tr>
<tr><td class="<? echo $fout_text_naam; ?>">Naam:</td><td><input type="text" class="<? echo $fout_vakje_naam; ?>" id="naam" name="naam" maxlength="20" value="<? echo $naam; ?>" /></td></tr>
<tr><td class="<? echo $fout_text_email; ?>">Email:</td><td><input type="text" class="<? echo $fout_vakje_email; ?>" id="email" name="email" maxlength="30" value="<? echo $email; ?>" /></td></tr>
<tr><td class="<? echo $fout_text_Nick ?>">Nick name:</td><td><input type="text" class="<? echo $fout_vakje_Nick; ?>" id="Nick" name="Nick" maxlength="30" value="<? echo $Nick; ?>" /></td></tr>
<tr><td class="<? echo $fout_text_age; ?>">Age:</td><td><input type="text" class="<? echo $fout_vakje_age; ?>" id="age" name="age" maxlength="2" value="<? echo $age; ?>" /></td></tr>
<tr><td class="<? echo $fout_text_msn; ?>">Email:</td><td><input type="text" class="<? echo $fout_vakje_msn; ?>" id="msn" name="msn" maxlength="30" value="<? echo $msn; ?>" /></td></tr>
<tr><td class="<? echo $fout_text_country; ?>">country:</td><td><input type="text" class="<? echo $fout_vakje_country; ?>" id="country" name="country" maxlength="30" value="<? echo $country; ?>" /></td></tr>
<tr><td class="<? echo $fout_text_game; ?>">Game:</td><td><input type="text" class="<? echo $fout_vakje_game; ?>" id="game" name="game" maxlength="30" value="<? echo $game; ?>" /></td></tr>
<tr><td class="<? echo $fout_text_xfire; ?>">Have you x-fire?:</td><td><input type="text" class="<? echo $fout_vakje_xfire; ?>" id="xfire" name="xfire" maxlength="30" value="<? echo $xfire; ?>" /></td></tr>
<tr><td class="<? echo $fout_text_ts; ?>">Have you Teamspeak v2 ?:</td><td><input type="text" class="<? echo $fout_vakje_ts; ?>" id="ts" name="ts" maxlength="30" value="<? echo $ts; ?>" /></td></tr>
<tr><td class="<? echo $fout_text_ervaaring; ?>">EXPERIENCE (ervaaring):</td><td><input type="text" class="<? echo $fout_vakje_ervaaring; ?>" id="ervaaring" name="ervaaring" maxlength="30" value="<? echo $ervaaring; ?>" /></td></tr>
<tr><td class="<? echo $fout_text_beschikbaar; ?>">AVAILABLE (beschik baar):</td><td><input type="text" class="<? echo $fout_vakje_beschikbaar; ?>" id="beschikbaar" name="beschikbaar" maxlength="30" value="<? echo $beschikbaar; ?>" /></td></tr>
<tr><td class="<? echo $fout_text_geboortedatum; ?>">Birthday (mm/dd/yyyy):</td><td><input type="text" class="<? echo $fout_vakje_geboortedatum; ?>" id="geboorte datum" name="geboortedatum" maxlength="30" value="<? echo $geboortedatum; ?>" /></td></tr>
<tr><td valign="top" class="<? echo $fout_text_bericht; ?>">COMMENT's:</td><td><textarea id="bericht" name="bericht" class="<? echo $fout_vakje_bericht; ?>" cols="30" rows="4"><? echo $bericht; ?></textarea></td></tr>
</td></tr></td>
</table>
<p> <input type="submit" id="verzenden" name="verzenden" value="Verzenden" /> <input type="reset" id="wis" name="wis" value="Invoer wissen" /></p>
<p> </p>
</form>
</td></tr>
</table>
<p style="text-align: center;">
<a href="http://www.legerarmy.nl/">
<img border="0" src="/images/terug.jpg" width="54" height="24"></a></p>
</p>
</body>
</html>
<?
}
?>
Dat was het hoopelijk kunnen jullie me helpen :(
En kun je meteen een mail chekker bij die van msn zetten aub ?
We kunnen de identiteit van de afzender niet controleren. Voor jouw veiligheid raden we je aan contact op te nemen met de afzender voor je dit bericht opent.
In mijn vorige mail script kreeg ik dit niet, dan was de afzender gewoon het e-mail adres van degene die de mail verstuurd had. Het probleem is dat bij bijvoorbeeld hotmail de mail nu als ongewenst gedetecteerd wordt doordat er geen afzender is.
Verder is het een zeer goed script!!
2
3
4
5
6
// Headers
$headers = "From: \"Contact Formulier KermisAdviesGroep.nl\" <".$wm_naam.">\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "Return-Path: Mail-Error <".$wm_naam.">\r\n";
Kan ik "naam" dan gewoon veranderen in "email"?
Terwijl ik dit typ merk ik dat (ineens) het spam filter niet meer werkt terwijl ik wel "$Anti_Spam = "10"; " heb staan. Staat er perongeluk iets verkeerd in de volgende stukjes?
2
3
4
5
$wm_naam = "Kermis Advies Groep"; // Webmaster naam
$wm_email = "[email protected]"; // Webmaster E-mail
$Anti_Spam = "10"; // Anti Spam Tijd in Minuten ( Voer "0" om de Spam Beveiliging uit te zetten )
$html = TRUE; // Een HTML email
2
3
4
5
6
7
8
else {
$Formulier = FALSE;
echo "<html><head><link href=\"style.css\" rel=\"stylesheet\" type=\"text/css\" /></head><body>";
echo "<center><h2> Spam Beveiliging </h2><br />";
echo "U kunt maar eens in de $Anti_Spam minuten een e-mail versturen!</center></body></html>";
header("refresh:3;url=".$site."");
}
Ideaal formulier!!! Zeer gebruiksvriendelijk.
Is het echt veilig tegen email injection? Kan het niet gebruikt worden door anderen (hi-jacking)? Zijn spambots buiten spel gezet?
---Hoe kan ik het plaatsen op een absolute layer in mijn html-pagina?---
Veel posts gelezen, jullie gaan leuk met elkaar om. Weten veel van PHP. Ik vrijwel niets. Hoop dat jullie mij helpen.
Bedankt alvast!
Hier zijn ook talloze scripts voor te vinden.
Wat bedoel je precies met het plaatsen in een absolute layer ? Je moet het bestand zowieso als .php renamen. (Of gebruik maken van htaccess om het als php te parsen)
Bedankt voor je snelle reactie!
Ja die CAPTCHA wil ik wel invoegen, maar hoe moet ik dat doen? En ik heb de website nu van .html in .php veranderd en hij doet 't ook nog!! Maar natuurlijk blijft alle script wel html en ik heb daar verschillende div's. In één van die div's wil ik het formulier plaatsen, maar ik weet niet hoe dat moet.
Misschien is daar wel een oplossing voor. Ik ben blij dat je me wilt helpen.
Maria.
Als ik een e-mail binnenkrijg via dit formulier dan ben ikzelf de afzender, is het niet mogelijk om te zorgen dat de afzender het e-mail adres is dat ingevuld is door de bezoeker? In dat geval kan je namelijk gewoon op het ontvangen bericht een reactie sturen i.p.v. dat je het e-mail adres moet kopiëren en plakken in een nieuw bericht.
Alvast bedankt!
edit: volgens mij heb ik het al gevonden, "wm_email" even veranderd in "email". Dus:
Klopt he?
Toch bedankt en vergeet dit berichtje,
Justin
zelf ben ik heel enthousiast over dit mailform en op mijn eigen site werkt het prima, zie http://www.berntdesign.nl.
Nu ik het echter bij een klant invoer en uit test, krijg ik - na het invullen van de velden- steevast de onderstaande warning:
"Warning: mail() [function.mail
<http://www.uwdomeinnaam.nl/function.mail> ]: SMTP server response:
501 5.5.4 Invalid Address in
D:\Home\ruijgrok\deeenhoorn.org\informatie.php on line 166 "
De mail wordt niet doorgestuurd.
De host van mijn klant zegt in een FAQ het volgende :
"Deze foutmelding komt voort uit een niet of foutief gedefineerd FROM address in de phpmail functie danwel het gebruik van zogenaamde vriendelijke namen in de phpmail functie. Vanwege bescherming tegen misbruik van verkeerd geprogrameerde mail formulieren is het noodzakelijk om een exact e-mail adres te definieren als het FROM adres. "
volgens mij staan alle adressen goed gedefinieerd, dus ik weet niet waar de fout zit. Het ingekorte formulier is te vinden op http://www.deeenhoorn.org/informatie.php
Het oorspronkelijke formulier staat op http://www.deeenhoorn.org/informatieoud.php
Kan iemand mij vertellen wat ik verkeerd gedaan heb, of is dit een probleem wat bij de host ligt ?
Alvast bedankt!
Kiki
Het kan inderdaad kloppen dat het from adres, of het aan adres niet klopt, probeer wat te experimenteren door < en >, en/of " en " om het e-mailadres te zetten.
De opbouw van een e-mailadres is meestal: Naam <[email protected]> of "Naam" <[email protected]>, of gewoon alleen <[email protected]>, en anders gewoon [email protected]
Script lijkt mij erg prettig; ben op zoek naar eenvoudig ciontactformulier. Start ook net met PHP. Bij het uplaoden van de .php-pagina krijg ik volgende melding bij openen pagina:
Warning: Cannot modify header information - headers already sent by (output started at /storage/mijndomein/users/056865/public/sites/www.patisseriejuliette.nl/contactformulier.php:3) in /storage/mijndomein/users/056865/public/sites/www.patisseriejuliette.nl/contactformulier.php on line 16
- de headerinfo mag dus niet worden veranderd. Kan ik dit evt verwijderen?
Voor de rest werkt script naar behoren.
Waar kan foutmelding aan liggen?
Heb je het script in een andere pagina geinclude ?
Zoja, zet dan helemaal boven aan die pagina hetvolgende:
@ Justin,
Ja dat klopt inderdaad je hoeft alleen $wm_mail te veranderen naar $email, dit heb ik zo gedaan zo dat ik zeker wat dat ik het niet in een spam map terecht komt omdat het via je eigen email adres gaat.
Want het repley adres is namelijk wel het adres wat word ingevoerrd via het Contact Formulier.
@ Kiki,
Heb je HTML mail aan of uit gezet in de configuratie?
Kijk anders hier even: http://www.phpfreakz.nl/forum.php?forum=1&iid=695873
html staat op TRUE
ik heb gekeken op de link die je gaf, er staat geen spatie achter het emailadres of zo
Dit is wat ik ingevuld heb staan :
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
ob_start(); // Voor Cookie setten
// Headers zetten zodat de de inhoud niet word gecashed
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
// Config Gedeelte
$site = "http://www.deeenhoorn.org/informatiebedankt.html"; // Site waarnaar je terug gaat als je een bericht hebt achtergelaten
$wm_naam = "Paul Ruijgrok"; // Webmaster naam
$wm_email = "[email protected]"; // Webmaster E-mail
$Anti_Spam = "0"; // Anti Spam Tijd in Minuten ( Voer "0" om de Spam Beveiliging uit te zetten )
$fout_text = TRUE; // Bij Fout Text Rood maken ( TRUE voor aan, FALSE voor uit )
$fout_vakje = TRUE;
$html = TRUE; // Een HTML email
$ip = $_SERVER['REMOTE_ADDR']; // IP van de verstuurder
$host = gethostbyaddr($ip); // Host van verstuurder
// Mail Checker
function checkmail($email)
{
$email_host = explode("@", $email);
$email_host = $email_host[1];
$email_resolved = gethostbyname($email_host);
if($email_resolved == $email_host)
{
$valid = FALSE;
}
if (eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$email))
{
$valid = TRUE;
}
else
{
$valid = FALSE;
}
return $valid;
}
"Je maakt gebruik van variabelen waarin je de hostnaam en het ip-adres zet. Die gegevens vraag je op en zo is het formulier overal te gebruiken. Echter, bij deze hosting provider dien je alles hard coded in het formulier te zetten. "
Alleen weet ik nu nog steeds niet wat ik moet veranderen:)
Formulier OK. Heb wel een wenslijstje voor Thijs:
Kun je een (veilige) files upload feature via php script toevoegen? (met max bytes, type file en number of files). Als attachement of upload direct naar server.
Kun je een autoresponder toevoegen, zodat verzender een berichtje ontvangt na verzending.
Kun je in plaats van de foutenlijst boven aan het formulier een simple uitroepteken rechts naast ieder "fout" vak plaatsen, zodat het irritante "jumpen" bij validatie ophoudt en het formulier op zijn plaats blijft.
Als dat allemaal zou kunnen en het formulier is echt super beveiligd, dan is dit het enige complete formulier op het web. Ik heb een massieve "header injection" beleefd (overleefd), vandaar mijn roep om alle mogelijke beveiliging via php.
Groet,
Maria
Dat is een hele waslijst :P
Maar zoals Pepijn dat al zei kan je het beste zelf proberen zodat je er zelf ook wat van gaat leren.
Dat de verzender zelf ook een berichtje krijgt wil ik er nog wel inbouwen, en dat je dat via de configuratie zelf aan en uit kan zetten zoals HTML email etc.
Hoe of wie heeft die massieve "header injection" op je formulier uitgetest.
Ja, Pepijn, je hebt natuurlijk gelijk, maar dan zou ik 's nachts moeten coden en overdag werken. Soms zijn er geen keuzes.
En Thijs, wees gerust, die header injection kwam vorige maand via een ander formulier, dat al 4 jaar niet was aangepast. Met jouw formulier zal dat niet gebeuren!?!?
Fijn, dat je me toch een beetje wilt ondersteunen!
Groet,
Maria
Ah ok vandaar, nee ik denk eerlijk gezegt dat je met dit formulier daar inderdaad geen last van hebt.
Zal vanavond even kijken of ik iets kan toevoegen dan een klant een mailtje krijgt met de gegevens die hij heeft ingevoerd wanneer hij op verzenden drukt.
Ik zou het ontzettend op prijs stellen stellen als de functie die @Maria heeft opgenoemd en het CAPTCHA ook erin zat.
Is het mogelijk om het te bouwen. Anders alleen een CAPTCHA die is al gebouwd gezien in je voorbeeld. Even het script ervan hier uploaden misschien?
Ontzettend Perfecte Script Trouwens Thijs :D
een heel mooi formulier, welke boeken of cursussen heb jij gedaan om dit allmaal te kunnen?
ik heb het formulier van je gebruikt en krijg als ik niks invul en druk op verzenden eerst een wit scherm met de meldingen ( 0.5 seconde ) en daarna pas mijn meldingen boven het formulier.
Waar ligt dit aan?
http://www.w3schools.com/css/default.asp
En voor diegene die zich vooral in borders interesseren:
http://www.w3schools.com/css/css_border.asp
En ja, je mag ook gewoon hex-waarden gebruiken in plaats van namen. Ik wist gewoon even niet de hexwaarde van rood uit mijn hoofd (#FF0000)
het is rgb#RRGGBB
dus je geeft eerst waarde roodroodgroengroenblauwblauw vondt nog fff leuk om te zeggen
ik Vind het script er geweldig uitzien en zou het graag op mijn site zetten.
ik heb het even geupload en hij doet alles goed (geeft geen foutmeldingen) alleen ik krijg me mail niet binnen hoe kan dit?? komt het mischien doordat ik een gratis host heb?
http://realmagic4all.awardspace.com/mailforum/ (daar staat het script online)
Heb nog geen kennis van php, maar wil het graag leren.
Maar om mijn probleem op te lossen gaat dit te lang duren, daarom de vraag of jullie me kunnen helpen.
Heb een contactformulier op de site staan via z'on formulierserver.
Nu wil ik dat niet meer via de server doen maar via mijn eigen website.
Heb de invulvakken Voornaam, Achternaam, Emailadres en (vraag/opmerking). Nu wil ik dat na het versturen ook na een andere pagina wordt gelinkt in mijn website. Kunnen jullie mij helpen dat zou geweldig zijn.
Alvast bedankt fred
ga naar contact.php, daar staat // Config Gedeelte
$site = "hier jouw site"; // Site waarnaar je terug gaat als je een bericht hebt achtergelaten
$wm_naam = "hier jouw naam"; // Webmaster naam
$wm_email = "hier jouw email"; // Webmaster E-mail
$Anti_Spam = "10"; // Anti Spam Tijd in Minuten ( Voer "0" om de Spam Beveiliging uit te zetten )
$fout_text = TRUE; // Bij Fout Text Rood maken ( TRUE voor aan, FALSE voor uit )
$fout_vakje = TRUE; // Bij Fout Border om Vakje Rood maken ( TRUE voor aan, FALSE voor uit )
$html = TRUE; // Een HTML email
als je dat alles aanpast kan je hem naar alles wat jij wil naar toe sturen!!!!!
voor Fred
Ik ben nog een beginnende php-er, en ik gebruik dit script: ik vind het ook makkelijkder dan versie 2.
Het enige probleem wat ik krijg bij dit script is als ik verkeerde gegevens invoer die errors helemaal bovenin komet te staan, maar ik wil ze in dat form-vakje. Heeft iemand een script ervoor dat de errors in dat form vakje komt te staan?
Verder echt een ontzettend mooi script!
Warning: Cannot modify header information - headers already sent by (output started at /home/jubelteen.nl/public_html/contact.php:649) in /home/jubelteen.nl/public_html/contact.php on line 650
Wat moet ik hier aan doen?
Ik ben een echte digiphp-er (sorry= niet het zelfde als LUIE PHP-er)
Please Help
Als je die warning krijgt, dan heb je een echo of iets voor 650.
edit: Dit mail script is ook erg goed en fijn: http://www.phptuts.nl/view/38/
Om te reageren heb je een account nodig en je moet ingelogd zijn.
Inhoudsopgave
Labels
- Geen tags toegevoegd.
PHP hulp
0 seconden vanaf nu