Extra velden toevoegen in contact form
Wij gebruiken een simpel contact form op onze website, maar deze wil ik uitbreiden met extra velden. Ik heb deze velden toegevoegd in contactscript.php. Als ik klik op voorbeeld html, zie ik beide extra velden staan. Ga ik naar het contact form op de website en test het dan zie je de velden niet en werkt het ook niet.
moet ik ergens anders ook vermelden dat ik extra velden heb???
Nu zie ik staan:
Contactform.text
Contactscript.php
form.php
index.html
Thanks.php
Alvast bedankt.
Rens
ps, kan ik ook een script maken dat als ik in gastenboek of contact form zit, ik rechtstreeks terug kan naar onze website.
maar ik kan hiervandaan niet ruiken wat er in die bestanden staan. post de scripts eens hier op het forum, dan kunnen we al meer.
Anders kan het zijn dat je cache nog het oude formulier heeft/laat zien.
Hoeveel kennis heb je van html en/of php? Wat je wilt kan idd allemaal en is niet zo moeilijk. Als je (enige) kennis hebt. Overigens vind ik dat een site altijd het menu moet laten zien, zodat de bezoeker zich makkelijk kan verplaatsen over de site. Afgaande op je vraagstelling lijkt dat nu op jullie site niet het geval.
Met welk programma maak je de website?
Heb je in het aangepaste formulier ook invoercontrole?
Wat staat er in Contactform.text? text is geen internet-bestandsformaat.
Gewijzigd op 01/02/2011 17:54:22 door Obelix Idefix
Naam
Email adres
Commentaar en/of opmerking
annuleer
bevestig
Nu wil ik 2 velden toevoegen te weten, Tel nr en Onderwerp.
Zoals ik eerder al vermelde had ik deze velden toegevoegd in "form.php"
In het voorbeeld laat hij deze dan gewoon zien, alleen werkt het niet???
Zoals het was, Form php
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
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
<form name="form" method="post" action="/contactform/contactscript.php">
<table width="400" border="0" cellspacing="2" cellpadding="2">
<tr>
<td width="200" valign="top" align="right">Naam: </td>
<td width="200" valign="top" align="left">
<input type="text" name="name" size="25" maxlength="200" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Emailadres: </td>
<td width="200" valign="top" align="left">
<input type="text" name="email" size="25" maxlength="100" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Commentaar en/of opmerking: </td>
<td width="200" valign="top" align="left">
<textarea name="msg" cols="25" rows="4"></textarea>
</td>
</tr><tr>
<td width="200" valign="top"> </td>
<td width="200" valign="top" align="left">
<input type="reset" name="Reset" value="Annuleer" />
<input type="submit" name="Submit" value="Bevestig" />
</td>
</tr>
</table>
</form>
<table width="400" border="0" cellspacing="2" cellpadding="2">
<tr>
<td width="200" valign="top" align="right">Naam: </td>
<td width="200" valign="top" align="left">
<input type="text" name="name" size="25" maxlength="200" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Emailadres: </td>
<td width="200" valign="top" align="left">
<input type="text" name="email" size="25" maxlength="100" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Commentaar en/of opmerking: </td>
<td width="200" valign="top" align="left">
<textarea name="msg" cols="25" rows="4"></textarea>
</td>
</tr><tr>
<td width="200" valign="top"> </td>
<td width="200" valign="top" align="left">
<input type="reset" name="Reset" value="Annuleer" />
<input type="submit" name="Submit" value="Bevestig" />
</td>
</tr>
</table>
</form>
Aangepast!!, Form.php
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
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
<form name="form" method="post" action="/contactform/contactscript.php">
<table width="400" border="0" cellspacing="2" cellpadding="2">
<tr>
<td width="200" valign="top" align="right">Naam: </td>
<td width="200" valign="top" align="left">
<input type="text" name="name" size="25" maxlength="200" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Tel nr: </td>
<td width="200" valign="top" align="left">
<input type="text" name="name" size="25" maxlength="200" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Emailadres: </td>
<td width="200" valign="top" align="left">
<input type="text" name="email" size="25" maxlength="100" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Onderwerp: </td>
<td width="200" valign="top" align="left">
<input type="text" name="name" size="25" maxlength="200" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Commentaar en/of opmerking: </td>
<td width="200" valign="top" align="left">
<textarea name="msg" cols="25" rows="4"></textarea>
</td>
</tr><tr>
<td width="200" valign="top"> </td>
<td width="200" valign="top" align="left">
<input type="reset" name="Reset" value="Annuleer" />
<input type="submit" name="Submit" value="Bevestig" />
</td>
</tr>
</table>
</form>
<table width="400" border="0" cellspacing="2" cellpadding="2">
<tr>
<td width="200" valign="top" align="right">Naam: </td>
<td width="200" valign="top" align="left">
<input type="text" name="name" size="25" maxlength="200" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Tel nr: </td>
<td width="200" valign="top" align="left">
<input type="text" name="name" size="25" maxlength="200" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Emailadres: </td>
<td width="200" valign="top" align="left">
<input type="text" name="email" size="25" maxlength="100" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Onderwerp: </td>
<td width="200" valign="top" align="left">
<input type="text" name="name" size="25" maxlength="200" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Commentaar en/of opmerking: </td>
<td width="200" valign="top" align="left">
<textarea name="msg" cols="25" rows="4"></textarea>
</td>
</tr><tr>
<td width="200" valign="top"> </td>
<td width="200" valign="top" align="left">
<input type="reset" name="Reset" value="Annuleer" />
<input type="submit" name="Submit" value="Bevestig" />
</td>
</tr>
</table>
</form>
Mijn kennis van php is minimaal
Ik gebruik Webdesign Pro 4
Webadres hd-assendelft.nl
In contact form en gastenboek wil ik een knop hebben die de bezoekers terug brengt naar de website.
Groetjes,
Rens
Toevoeging op 01/02/2011 19:40:59:
Rens Degenhart op 01/02/2011 18:08:53:
Het contact form laat nu 3 velden zien.
Naam
Email adres
Commentaar en/of opmerking
annuleer
bevestig
Nu wil ik 2 velden toevoegen te weten, Tel nr en Onderwerp.
Zoals ik eerder al vermelde had ik deze velden toegevoegd in "form.php"
In het voorbeeld laat hij deze dan gewoon zien, alleen werkt het niet???
Zoals het was, Form php
Aangepast!!, Form.php
Mijn kennis van php is minimaal
Ik gebruik Webdesign Pro 4
Webadres hd-assendelft.nl
In contact form en gastenboek wil ik een knop hebben die de bezoekers terug brengt naar de website.
Groetjes,
Rens
[Hopelijk kan iemand me verder helpen]
Graag in het vervolg bij code, [code] [/code] tags gebruiken. [/modedit]
Naam
Email adres
Commentaar en/of opmerking
annuleer
bevestig
Nu wil ik 2 velden toevoegen te weten, Tel nr en Onderwerp.
Zoals ik eerder al vermelde had ik deze velden toegevoegd in "form.php"
In het voorbeeld laat hij deze dan gewoon zien, alleen werkt het niet???
Zoals het was, Form php
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
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
<form name="form" method="post" action="/contactform/contactscript.php">
<table width="400" border="0" cellspacing="2" cellpadding="2">
<tr>
<td width="200" valign="top" align="right">Naam: </td>
<td width="200" valign="top" align="left">
<input type="text" name="name" size="25" maxlength="200" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Emailadres: </td>
<td width="200" valign="top" align="left">
<input type="text" name="email" size="25" maxlength="100" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Commentaar en/of opmerking: </td>
<td width="200" valign="top" align="left">
<textarea name="msg" cols="25" rows="4"></textarea>
</td>
</tr><tr>
<td width="200" valign="top"> </td>
<td width="200" valign="top" align="left">
<input type="reset" name="Reset" value="Annuleer" />
<input type="submit" name="Submit" value="Bevestig" />
</td>
</tr>
</table>
</form>
<table width="400" border="0" cellspacing="2" cellpadding="2">
<tr>
<td width="200" valign="top" align="right">Naam: </td>
<td width="200" valign="top" align="left">
<input type="text" name="name" size="25" maxlength="200" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Emailadres: </td>
<td width="200" valign="top" align="left">
<input type="text" name="email" size="25" maxlength="100" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Commentaar en/of opmerking: </td>
<td width="200" valign="top" align="left">
<textarea name="msg" cols="25" rows="4"></textarea>
</td>
</tr><tr>
<td width="200" valign="top"> </td>
<td width="200" valign="top" align="left">
<input type="reset" name="Reset" value="Annuleer" />
<input type="submit" name="Submit" value="Bevestig" />
</td>
</tr>
</table>
</form>
Aangepast!!, Form.php
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
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
<form name="form" method="post" action="/contactform/contactscript.php">
<table width="400" border="0" cellspacing="2" cellpadding="2">
<tr>
<td width="200" valign="top" align="right">Naam: </td>
<td width="200" valign="top" align="left">
<input type="text" name="name" size="25" maxlength="200" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Tel nr: </td>
<td width="200" valign="top" align="left">
<input type="text" name="name" size="25" maxlength="200" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Emailadres: </td>
<td width="200" valign="top" align="left">
<input type="text" name="email" size="25" maxlength="100" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Onderwerp: </td>
<td width="200" valign="top" align="left">
<input type="text" name="name" size="25" maxlength="200" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Commentaar en/of opmerking: </td>
<td width="200" valign="top" align="left">
<textarea name="msg" cols="25" rows="4"></textarea>
</td>
</tr><tr>
<td width="200" valign="top"> </td>
<td width="200" valign="top" align="left">
<input type="reset" name="Reset" value="Annuleer" />
<input type="submit" name="Submit" value="Bevestig" />
</td>
</tr>
</table>
</form>
<table width="400" border="0" cellspacing="2" cellpadding="2">
<tr>
<td width="200" valign="top" align="right">Naam: </td>
<td width="200" valign="top" align="left">
<input type="text" name="name" size="25" maxlength="200" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Tel nr: </td>
<td width="200" valign="top" align="left">
<input type="text" name="name" size="25" maxlength="200" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Emailadres: </td>
<td width="200" valign="top" align="left">
<input type="text" name="email" size="25" maxlength="100" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Onderwerp: </td>
<td width="200" valign="top" align="left">
<input type="text" name="name" size="25" maxlength="200" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Commentaar en/of opmerking: </td>
<td width="200" valign="top" align="left">
<textarea name="msg" cols="25" rows="4"></textarea>
</td>
</tr><tr>
<td width="200" valign="top"> </td>
<td width="200" valign="top" align="left">
<input type="reset" name="Reset" value="Annuleer" />
<input type="submit" name="Submit" value="Bevestig" />
</td>
</tr>
</table>
</form>
Mijn kennis van php is minimaal
Ik gebruik Webdesign Pro 4
Webadres hd-assendelft.nl
In contact form en gastenboek wil ik een knop hebben die de bezoekers terug brengt naar de website.
Groetjes,
Rens
[Hopelijk kan iemand me verder helpen]
Graag in het vervolg bij code, [code] [/code] tags gebruiken. [/modedit]
Gewijzigd op 01/02/2011 23:00:13 door Bas IJzelendoorn
Je noemt nu zowel naam, tel.nr en onderwerp 'name'. Dat gaat in ieder geval niet goed.
Maxlength van 200 voor een tel.nr. lijkt me ook wat overdreven.
Als ik je verhaal goed begrijp, zie je online het gewijzigde formulier niet, maar op je pc wel? In dat geval zul je het formulier nog moeten uploaden naar je hosting. Is dat ook gebeurd?
Code (php)
1
2
2
<a href="http://www.hd-assendelft.nl">
<img border="0" src="images/back.png" width="170" height="37"></a>
<img border="0" src="images/back.png" width="170" height="37"></a>
Toevoeging op 02/02/2011 00:53:00:
Kom je er niet uit post dan eventjes contactscript.php
Gewijzigd op 02/02/2011 02:55:02 door Robbert de Brock
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
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
<?php
// VALUES FROM THE FORM
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['msg'];
// ERROR & SECURITY CHECKS
if ( ( !$email ) ||
( strlen($_POST['email']) > 200 ) ||
( !preg_match("#^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$#", $email) )
)
{
print "Error: Invalid E-Mail Address";
exit;
}
if ( ( !$name ) ||
( strlen($name) > 100 ) ||
( preg_match("/[:=@\<\>]/", $name) )
)
{
print "Error: Invalid Name";
exit;
}
if ( preg_match("#cc:#i", $message, $matches) )
{
print "Error: Found Invalid Header Field";
exit;
}
if ( !$message )
{
print "Error: No Message";
exit;
}
if (eregi("\r",$email) || eregi("\n",$email)){
print "Error: Invalid E-Mail Address";
exit;
}
if (FALSE) {
print "Error: You cannot send to an email address on the same domain.";
exit;
}
// CREATE THE EMAIL
$headers = "Content-Type: text/plain; charset=iso-8859-1\n";
$headers .= "From: $name <$email>\n";
$recipient = "[email protected]";
$subject = "Contact From Your Website";
$message = wordwrap($message, 1024);
// SEND THE EMAIL TO YOU
mail($recipient, $subject, $message, $headers);
// REDIRECT TO THE THANKS PAGE
header("location: thanks.php");
?>
// VALUES FROM THE FORM
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['msg'];
// ERROR & SECURITY CHECKS
if ( ( !$email ) ||
( strlen($_POST['email']) > 200 ) ||
( !preg_match("#^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$#", $email) )
)
{
print "Error: Invalid E-Mail Address";
exit;
}
if ( ( !$name ) ||
( strlen($name) > 100 ) ||
( preg_match("/[:=@\<\>]/", $name) )
)
{
print "Error: Invalid Name";
exit;
}
if ( preg_match("#cc:#i", $message, $matches) )
{
print "Error: Found Invalid Header Field";
exit;
}
if ( !$message )
{
print "Error: No Message";
exit;
}
if (eregi("\r",$email) || eregi("\n",$email)){
print "Error: Invalid E-Mail Address";
exit;
}
if (FALSE) {
print "Error: You cannot send to an email address on the same domain.";
exit;
}
// CREATE THE EMAIL
$headers = "Content-Type: text/plain; charset=iso-8859-1\n";
$headers .= "From: $name <$email>\n";
$recipient = "[email protected]";
$subject = "Contact From Your Website";
$message = wordwrap($message, 1024);
// SEND THE EMAIL TO YOU
mail($recipient, $subject, $message, $headers);
// REDIRECT TO THE THANKS PAGE
header("location: thanks.php");
?>
Hoi Robbert, dit is het contactscript.php
Snap alleen niet waar ik de veranderingen moet toevoegen.
Dat wat Obelix aangaf heb ik aangepast
Alvast bedankt voor de genomen moeite
Overigens gebruik je eregi in het script --> is verouderd.
Of je mail-functie voldoet aan alle eisen, weet ik niet, maar meestal wordt geadviseerd om php-mailer of swift-mailer te gebruiken.
Breek je het verwerken af als er een veld niet goed is ingevuld? En de controle van de rest laat je nog even achterwege. Is het niet vriendelijker om alle fouten in 1x weer te geven?
Haal het mailadres even uit je code.
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
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
<form name="form" method="post" action="/contactform/contactscript.php">
<table width="414" border="0" cellspacing="2" cellpadding="2">
<tr>
<td width="200" valign="top" align="right">Naam: </td>
<td width="251" valign="top" align="left">
<input type="text" name="name" size="18" maxlength="20" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Tel nr: </td>
<td width="251" valign="top" align="left">
<input type="text" name="tel" size="18" maxlength="10" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">E-mailadres: </td>
<td width="251" valign="top" align="left">
<input type="text" name="email" size="18" maxlength="40" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Onderwerp: </td>
<td width="251" valign="top" align="left">
<input type="text" name="onderwerp" size="18" maxlength="30" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Bericht: </td>
<td width="251" valign="top" align="left">
<textarea name="msg" cols="27" rows="6"></textarea></td>
</tr><tr>
<td width="200" valign="top"> </td>
<td width="251" valign="top" align="left">
<input type="submit" name="Submit" value="Verzenden" />
<input type="reset" name="Reset" value="Invoer wissen" />
</td>
</tr>
</table>
</form>
<table width="414" border="0" cellspacing="2" cellpadding="2">
<tr>
<td width="200" valign="top" align="right">Naam: </td>
<td width="251" valign="top" align="left">
<input type="text" name="name" size="18" maxlength="20" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Tel nr: </td>
<td width="251" valign="top" align="left">
<input type="text" name="tel" size="18" maxlength="10" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">E-mailadres: </td>
<td width="251" valign="top" align="left">
<input type="text" name="email" size="18" maxlength="40" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Onderwerp: </td>
<td width="251" valign="top" align="left">
<input type="text" name="onderwerp" size="18" maxlength="30" />
</td>
</tr><tr>
<td width="200" valign="top" align="right">Bericht: </td>
<td width="251" valign="top" align="left">
<textarea name="msg" cols="27" rows="6"></textarea></td>
</tr><tr>
<td width="200" valign="top"> </td>
<td width="251" valign="top" align="left">
<input type="submit" name="Submit" value="Verzenden" />
<input type="reset" name="Reset" value="Invoer wissen" />
</td>
</tr>
</table>
</form>
contactscript.php
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
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
<?php
// VALUES FROM THE FORM
$name = $_POST['name'];
$tel = $_POST['tel'];
$email = $_POST['email'];
$onderwerp = $_POST['onderwerp'];
$message = $_POST['msg'];
// ERROR & SECURITY CHECKS
if ( ( !$email ) ||
( strlen($_POST['email']) > 40 ) ||
( !preg_match("#^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$#", $email) )
)
{
print "Error: Invalid E-Mail Address";
exit;
}
if ( ( !$name ) ||
( strlen($name) > 100 ) ||
( preg_match("/[:=@\<\>]/", $name) )
)
{
print "Error: Invalid Name";
exit;
}
if ( ( !$tel ) ||
( strlen($tel) > 10 ) ||
( preg_match("/[:=@\<\>]a-zA-Z/", $tel) )
)
{
print "Error: Invalid Phonenumber";
exit;
}
if ( preg_match("#cc:#i", $message, $matches) )
{
print "Error: Found Invalid Header Field";
exit;
}
if ( !$message )
{
print "Error: No Message";
exit;
}
if(!preg_match("/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/i", $email)) {
print "Error: Invalid E-Mail Address";
exit;
}
if (FALSE) {
print "Error: You cannot send to an email address on the same domain.";
exit;
}
// CREATE THE EMAIL
$headers = "Content-Type: text/plain; charset=iso-8859-1\n";
$headers .= "From: $name <$email>\n";
$recipient = "[email protected]";
$subject = "$onderwerp";
$message = wordwrap($tel, $message, 1024);
// SEND THE EMAIL TO YOU
mail($recipient, $subject, $message, $headers);
// REDIRECT TO THE THANKS PAGE
header("location: thanks.php");
?>
// VALUES FROM THE FORM
$name = $_POST['name'];
$tel = $_POST['tel'];
$email = $_POST['email'];
$onderwerp = $_POST['onderwerp'];
$message = $_POST['msg'];
// ERROR & SECURITY CHECKS
if ( ( !$email ) ||
( strlen($_POST['email']) > 40 ) ||
( !preg_match("#^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$#", $email) )
)
{
print "Error: Invalid E-Mail Address";
exit;
}
if ( ( !$name ) ||
( strlen($name) > 100 ) ||
( preg_match("/[:=@\<\>]/", $name) )
)
{
print "Error: Invalid Name";
exit;
}
if ( ( !$tel ) ||
( strlen($tel) > 10 ) ||
( preg_match("/[:=@\<\>]a-zA-Z/", $tel) )
)
{
print "Error: Invalid Phonenumber";
exit;
}
if ( preg_match("#cc:#i", $message, $matches) )
{
print "Error: Found Invalid Header Field";
exit;
}
if ( !$message )
{
print "Error: No Message";
exit;
}
if(!preg_match("/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/i", $email)) {
print "Error: Invalid E-Mail Address";
exit;
}
if (FALSE) {
print "Error: You cannot send to an email address on the same domain.";
exit;
}
// CREATE THE EMAIL
$headers = "Content-Type: text/plain; charset=iso-8859-1\n";
$headers .= "From: $name <$email>\n";
$recipient = "[email protected]";
$subject = "$onderwerp";
$message = wordwrap($tel, $message, 1024);
// SEND THE EMAIL TO YOU
mail($recipient, $subject, $message, $headers);
// REDIRECT TO THE THANKS PAGE
header("location: thanks.php");
?>
PS: weet niet cker of die klopt ben ook niet erg ervaren :P
eerst kijken of er uberhaupt iets gepost is doe je met:
if($_SERVER['REQUEST_METHOD'] == 'POST'){
je posts controloren zou ik:
Ik heb beide scripts die aangepast zijn door Robbert toegepast, maar in contactscript zit een fout (denk ik) want het werkt niet. Ik krijg als ik het voorbeeld html bekijk een foutcode te zien??
40 ) || ( !preg_match("#^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$#", $email) ) ) { print "Error: Invalid E-Mail Address"; exit; } if ( ( !$name ) || ( strlen($name) > 100 ) || ( preg_match("/[:=@\<\>]/", $name) ) ) { print "Error: Invalid Name"; exit; } if ( ( !$tel ) || ( strlen($tel) > 10 ) || ( preg_match("/[:=@\<\>]a-zA-Z/", $tel) ) ) { print "Error: Invalid Phonenumber"; exit; } if ( preg_match("#cc:#i", $message, $matches) ) { print "Error: Found Invalid Header Field"; exit; } if ( !$message ) { print "Error: No Message"; exit; } if(!preg_match("/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/i", $email)) { print "Error: Invalid E-Mail Address"; exit; } if (FALSE) { print "Error: You cannot send to an email address on the same domain."; exit; } // CREATE THE EMAIL $headers = "Content-Type: text/plain; charset=iso-8859-1\n"; $headers .= "From: $name <$email>\n"; $recipient = "mijnemailadres@mijnadres"; $subject = "$onderwerp"; $message = wordwrap($tel, $message, 1024); // SEND THE EMAIL TO YOU mail($recipient, $subject, $message, $headers); // REDIRECT TO THE THANKS PAGE header("location: thanks.php"); ?>
Tevens weet ik niet goed wat Gerard bedoeld met zijn antwoord en hoe ik het stukje script moet toepassen, heb tenslotte niet al te veel verstand van Php
Rens
Rens Degenhart op 03/02/2011 18:11:27:
Hallo forumgebruikers,
Ik heb beide scripts die aangepast zijn door Robbert toegepast, maar in contactscript zit een fout (denk ik) want het werkt niet. Ik krijg als ik het voorbeeld html bekijk een foutcode te zien??
40 ) || ( !preg_match("#^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$#", $email) ) ) { print "Error: Invalid E-Mail Address"; exit; } if ( ( !$name ) || ( strlen($name) > 100 ) || ( preg_match("/[:=@\<\>]/", $name) ) ) { print "Error: Invalid Name"; exit; } if ( ( !$tel ) || ( strlen($tel) > 10 ) || ( preg_match("/[:=@\<\>]a-zA-Z/", $tel) ) ) { print "Error: Invalid Phonenumber"; exit; } if ( preg_match("#cc:#i", $message, $matches) ) { print "Error: Found Invalid Header Field"; exit; } if ( !$message ) { print "Error: No Message"; exit; } if(!preg_match("/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/i", $email)) { print "Error: Invalid E-Mail Address"; exit; } if (FALSE) { print "Error: You cannot send to an email address on the same domain."; exit; } // CREATE THE EMAIL $headers = "Content-Type: text/plain; charset=iso-8859-1\n"; $headers .= "From: $name <$email>\n"; $recipient = "mijnemailadres@mijnadres"; $subject = "$onderwerp"; $message = wordwrap($tel, $message, 1024); // SEND THE EMAIL TO YOU mail($recipient, $subject, $message, $headers); // REDIRECT TO THE THANKS PAGE header("location: thanks.php"); ?>
Tevens weet ik niet goed wat Gerard bedoeld met zijn antwoord en hoe ik het stukje script moet toepassen, heb tenslotte niet al te veel verstand van Php
Rens
Ik heb beide scripts die aangepast zijn door Robbert toegepast, maar in contactscript zit een fout (denk ik) want het werkt niet. Ik krijg als ik het voorbeeld html bekijk een foutcode te zien??
40 ) || ( !preg_match("#^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$#", $email) ) ) { print "Error: Invalid E-Mail Address"; exit; } if ( ( !$name ) || ( strlen($name) > 100 ) || ( preg_match("/[:=@\<\>]/", $name) ) ) { print "Error: Invalid Name"; exit; } if ( ( !$tel ) || ( strlen($tel) > 10 ) || ( preg_match("/[:=@\<\>]a-zA-Z/", $tel) ) ) { print "Error: Invalid Phonenumber"; exit; } if ( preg_match("#cc:#i", $message, $matches) ) { print "Error: Found Invalid Header Field"; exit; } if ( !$message ) { print "Error: No Message"; exit; } if(!preg_match("/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/i", $email)) { print "Error: Invalid E-Mail Address"; exit; } if (FALSE) { print "Error: You cannot send to an email address on the same domain."; exit; } // CREATE THE EMAIL $headers = "Content-Type: text/plain; charset=iso-8859-1\n"; $headers .= "From: $name <$email>\n"; $recipient = "mijnemailadres@mijnadres"; $subject = "$onderwerp"; $message = wordwrap($tel, $message, 1024); // SEND THE EMAIL TO YOU mail($recipient, $subject, $message, $headers); // REDIRECT TO THE THANKS PAGE header("location: thanks.php"); ?>
Tevens weet ik niet goed wat Gerard bedoeld met zijn antwoord en hoe ik het stukje script moet toepassen, heb tenslotte niet al te veel verstand van Php
Rens
is er iets met je server aan de hand
zal wel aan mij liggen dan denk ik ben ook iet zo ervaren heb ook maar wat geprobeert :P
PHPer PHPer op 03/02/2011 19:06:16:
is er iets met je server aan de hand
Rens Degenhart op 03/02/2011 18:11:27:
Hallo forumgebruikers,
Ik heb beide scripts die aangepast zijn door Robbert toegepast, maar in contactscript zit een fout (denk ik) want het werkt niet. Ik krijg als ik het voorbeeld html bekijk een foutcode te zien??
40 ) || ( !preg_match("#^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$#", $email) ) ) { print "Error: Invalid E-Mail Address"; exit; } if ( ( !$name ) || ( strlen($name) > 100 ) || ( preg_match("/[:=@\<\>]/", $name) ) ) { print "Error: Invalid Name"; exit; } if ( ( !$tel ) || ( strlen($tel) > 10 ) || ( preg_match("/[:=@\<\>]a-zA-Z/", $tel) ) ) { print "Error: Invalid Phonenumber"; exit; } if ( preg_match("#cc:#i", $message, $matches) ) { print "Error: Found Invalid Header Field"; exit; } if ( !$message ) { print "Error: No Message"; exit; } if(!preg_match("/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/i", $email)) { print "Error: Invalid E-Mail Address"; exit; } if (FALSE) { print "Error: You cannot send to an email address on the same domain."; exit; } // CREATE THE EMAIL $headers = "Content-Type: text/plain; charset=iso-8859-1\n"; $headers .= "From: $name <$email>\n"; $recipient = "mijnemailadres@mijnadres"; $subject = "$onderwerp"; $message = wordwrap($tel, $message, 1024); // SEND THE EMAIL TO YOU mail($recipient, $subject, $message, $headers); // REDIRECT TO THE THANKS PAGE header("location: thanks.php"); ?>
Tevens weet ik niet goed wat Gerard bedoeld met zijn antwoord en hoe ik het stukje script moet toepassen, heb tenslotte niet al te veel verstand van Php
Rens
Ik heb beide scripts die aangepast zijn door Robbert toegepast, maar in contactscript zit een fout (denk ik) want het werkt niet. Ik krijg als ik het voorbeeld html bekijk een foutcode te zien??
40 ) || ( !preg_match("#^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$#", $email) ) ) { print "Error: Invalid E-Mail Address"; exit; } if ( ( !$name ) || ( strlen($name) > 100 ) || ( preg_match("/[:=@\<\>]/", $name) ) ) { print "Error: Invalid Name"; exit; } if ( ( !$tel ) || ( strlen($tel) > 10 ) || ( preg_match("/[:=@\<\>]a-zA-Z/", $tel) ) ) { print "Error: Invalid Phonenumber"; exit; } if ( preg_match("#cc:#i", $message, $matches) ) { print "Error: Found Invalid Header Field"; exit; } if ( !$message ) { print "Error: No Message"; exit; } if(!preg_match("/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/i", $email)) { print "Error: Invalid E-Mail Address"; exit; } if (FALSE) { print "Error: You cannot send to an email address on the same domain."; exit; } // CREATE THE EMAIL $headers = "Content-Type: text/plain; charset=iso-8859-1\n"; $headers .= "From: $name <$email>\n"; $recipient = "mijnemailadres@mijnadres"; $subject = "$onderwerp"; $message = wordwrap($tel, $message, 1024); // SEND THE EMAIL TO YOU mail($recipient, $subject, $message, $headers); // REDIRECT TO THE THANKS PAGE header("location: thanks.php"); ?>
Tevens weet ik niet goed wat Gerard bedoeld met zijn antwoord en hoe ik het stukje script moet toepassen, heb tenslotte niet al te veel verstand van Php
Rens
is er iets met je server aan de hand
Deze code ga ik niet eens ontcijferen.
Joris van Rijn op 03/02/2011 19:14:16:
Deze code ga ik niet eens ontcijferen.
[Ja sorry Joris, dat vraag ik ook niet, heb alleen ter goeder trouw gehandeld en de aangepaste versie van Robbert toegepast. In ieder geval, werkt het niet meer, en ga ik kijken wat er te redden valt]
PHPer PHPer op 03/02/2011 19:06:16:
is er iets met je server aan de hand
Rens Degenhart op 03/02/2011 18:11:27:
Hallo forumgebruikers,
Ik heb beide scripts die aangepast zijn door Robbert toegepast, maar in contactscript zit een fout (denk ik) want het werkt niet. Ik krijg als ik het voorbeeld html bekijk een foutcode te zien??
40 ) || ( !preg_match("#^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$#", $email) ) ) { print "Error: Invalid E-Mail Address"; exit; } if ( ( !$name ) || ( strlen($name) > 100 ) || ( preg_match("/[:=@\<\>]/", $name) ) ) { print "Error: Invalid Name"; exit; } if ( ( !$tel ) || ( strlen($tel) > 10 ) || ( preg_match("/[:=@\<\>]a-zA-Z/", $tel) ) ) { print "Error: Invalid Phonenumber"; exit; } if ( preg_match("#cc:#i", $message, $matches) ) { print "Error: Found Invalid Header Field"; exit; } if ( !$message ) { print "Error: No Message"; exit; } if(!preg_match("/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/i", $email)) { print "Error: Invalid E-Mail Address"; exit; } if (FALSE) { print "Error: You cannot send to an email address on the same domain."; exit; } // CREATE THE EMAIL $headers = "Content-Type: text/plain; charset=iso-8859-1\n"; $headers .= "From: $name <$email>\n"; $recipient = "mijnemailadres@mijnadres"; $subject = "$onderwerp"; $message = wordwrap($tel, $message, 1024); // SEND THE EMAIL TO YOU mail($recipient, $subject, $message, $headers); // REDIRECT TO THE THANKS PAGE header("location: thanks.php"); ?>
Tevens weet ik niet goed wat Gerard bedoeld met zijn antwoord en hoe ik het stukje script moet toepassen, heb tenslotte niet al te veel verstand van Php
Rens
Ik heb beide scripts die aangepast zijn door Robbert toegepast, maar in contactscript zit een fout (denk ik) want het werkt niet. Ik krijg als ik het voorbeeld html bekijk een foutcode te zien??
40 ) || ( !preg_match("#^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$#", $email) ) ) { print "Error: Invalid E-Mail Address"; exit; } if ( ( !$name ) || ( strlen($name) > 100 ) || ( preg_match("/[:=@\<\>]/", $name) ) ) { print "Error: Invalid Name"; exit; } if ( ( !$tel ) || ( strlen($tel) > 10 ) || ( preg_match("/[:=@\<\>]a-zA-Z/", $tel) ) ) { print "Error: Invalid Phonenumber"; exit; } if ( preg_match("#cc:#i", $message, $matches) ) { print "Error: Found Invalid Header Field"; exit; } if ( !$message ) { print "Error: No Message"; exit; } if(!preg_match("/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/i", $email)) { print "Error: Invalid E-Mail Address"; exit; } if (FALSE) { print "Error: You cannot send to an email address on the same domain."; exit; } // CREATE THE EMAIL $headers = "Content-Type: text/plain; charset=iso-8859-1\n"; $headers .= "From: $name <$email>\n"; $recipient = "mijnemailadres@mijnadres"; $subject = "$onderwerp"; $message = wordwrap($tel, $message, 1024); // SEND THE EMAIL TO YOU mail($recipient, $subject, $message, $headers); // REDIRECT TO THE THANKS PAGE header("location: thanks.php"); ?>
Tevens weet ik niet goed wat Gerard bedoeld met zijn antwoord en hoe ik het stukje script moet toepassen, heb tenslotte niet al te veel verstand van Php
Rens
is er iets met je server aan de hand
Deze code ga ik niet eens ontcijferen.
[Ja sorry Joris, dat vraag ik ook niet, heb alleen ter goeder trouw gehandeld en de aangepaste versie van Robbert toegepast. In ieder geval, werkt het niet meer, en ga ik kijken wat er te redden valt]
Hoe bekijk je ze? Direct in de browser?
Gewijzigd op 03/02/2011 20:16:12 door Obelix Idefix
Obelix en Idefix op 03/02/2011 20:14:36:
Bestanden wel als php opgeslagen en niet als html?
Hoe bekijk je ze? Direct in de browser?
[Contactform is een Php programma en heeft een knop om het in html te bekijken. Als je iets aanpast kun je dus gelijk zien hoe het eruit ziet]
Hoe bekijk je ze? Direct in de browser?
[Contactform is een Php programma en heeft een knop om het in html te bekijken. Als je iets aanpast kun je dus gelijk zien hoe het eruit ziet]
Rens Degenhart op 03/02/2011 20:23:02:
[Contactform is een Php programma en heeft een knop om het in html te bekijken. Als je iets aanpast kun je dus gelijk zien hoe het eruit ziet]
Begrijp mogelijk je tekst verkeerd, maar php-code in html bekijken gaat volgens mij problemen geven.
Je geeft in je andere post aan niet veel php-kennis te hebben. Begin aub bij het begin en leer wat php-basis. Gebruik goede programma's om code mee te schrijven en test het online of bv door xampp te gebruiken.
Gewijzigd op 03/02/2011 20:42:05 door Obelix Idefix
online testen doe ik zelf ook altijd... aanpassen testen, werkt het niet weer wat anders proberen en zo maar door, maar dit is onmogelijk te doen voor mij aangezien ik jou complete php files niet heb.
Ik heb een heel mooi contactformulier gevonden, maar krijg het niet te zien op mijn website, zou iemand het script na kunnen kijken en mij kunnen wijzen op eventuele fouten.
Volgens de author moet ik twee scripts plaatsen contactformulier.php ( heb ik veranderd in index.php) op aanraden van onze host.
En de map metspambeveiliging.html.
ps, Vergeten te melden, als ik op contactformulier klik op onze website krijg ik een witte pagina te zien met de tekst " Het formulier is niet verzonden, probeer het nog een keer"
INDEX.PHP
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
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
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
<?PHP
define('kOptional', true);
define('kMandatory', false);
error_reporting(E_ERROR | E_WARNING | E_PARSE);
ini_set('track_errors', true);
function CaptchaGenerator() {
if ( (!function_exists('imagejpeg')) && (!function_exists('imagepng')) ) {
exit;
}
$im = imagecreate(100,40);
$white = imagecolorallocate($im, 255, 255, 255);
$black = imagecolorallocate($im, 0, 0, 0);
$gray = imagecolorallocate($im, 150, 150, 150);
imagerectangle($im, 0, 0, 25, 39, $gray);
imagerectangle($im, 25, 0, 50, 39, $gray);
imagerectangle($im, 50, 0, 75, 39, $gray);
imagerectangle($im, 75, 0, 99, 39, $gray);
imageline($im, 0, 0, 25, 39, $gray);
imageline($im, 25, 0, 50, 39, $gray);
imageline($im, 50, 0, 75, 39, $gray);
imageline($im, 75, 0, 99, 39, $gray);
imageline($im, 0, 39, 25, 0, $gray);
imageline($im, 25, 39, 50, 0, $gray);
imageline($im, 50, 39, 75, 0, $gray);
imageline($im, 75, 39, 99, 0, $gray);
$c1 = rand(65, 90);
$c2 = rand(65, 90);
$c3 = rand(65, 90);
$c4 = rand(65, 90);
$c5 = rand(65, 90);
$textOut = chr($c1) . ' ' . chr($c2) . ' ' . chr($c3) . ' ' . chr($c4) . ' ' . chr($c5);
$textCaptcha = chr($c1) . chr($c2) . chr($c3) . chr($c4) . chr($c5);
$a = imagestring($im, 5, 11, 13, $textOut, $black);
$fileName = substr(md5($textCaptcha), 0, 12);
$captchaDir = '../captchabestanden/';
if ( !is_dir( $captchaDir ) ) {
echo '<html><head><title>Error</title></head><body>Access Code Validatie Error: directory "../captchabestanden" niet gevonden. Script zal nu stoppen.</body></html>';
exit;
}
if ( !is_writable( $captchaDir ) ) {
echo '<html><head><title>Error</title></head><body>Access Code Validatie Error: directory "../captchabestanden" is niet beschrijfbaar. Script zal nu stoppen.</body></html>';
exit;
}
$handle = opendir( $captchaDir );
while ( $captchaFile = readdir($handle) ) {
if ( ( substr($captchaFile, 0, 1) != '.' ) && ( substr($captchaFile, 0, 1) != '_' ) && ( !is_dir( '../captchabestanden/' . '/' . $captchaFile ) ) ) {
if ( ( filemtime( '../captchabestanden/' . '/' . $captchaFile ) + 300 ) < time() ) {
unlink( '../captchabestanden/' . '/' . $captchaFile );
}
}
}
closedir( $handle );
$handle = @fopen( '../captchabestanden/' . '/' . $fileName, 'w' );
if ( !$handle ) {
echo '<html><head><title>Error</title></head><body>Access Code Validatie Error: het is onmogelijk gebleken om een captcha controle bestand te maken. Script zal nu stoppen.</body></html>';
exit;
}
fclose($handle);
if (imagetypes() & IMG_JPG) {
header('Content-type: image/jpeg');
imagejpeg($im);
} elseif (imagetypes() & IMG_PNG) {
header('Content-type: image/png');
imagepng($im);
}
exit;
}
function DoStripSlashes($fieldValue) {
if ( get_magic_quotes_gpc() ) {
if (is_array($fieldValue) ) {
return array_map('DoStripSlashes', $fieldValue);
} else {
return stripslashes($fieldValue);
}
} else {
return $fieldValue;
}
}
function FilterCChars($theString) {
return preg_replace('/[\x00-\x1F]/', '', $theString);
}
function CheckFTGCaptcha($accessCode) {
$captchaDir = '../captchabestanden/';
if ( !is_dir( $captchaDir ) ) {
echo '<html><head><title>Error</title></head><body>Access Code Validatie Error: directory "../captchabestanden" niet gevonden. Script zal nu stoppen.</body></html>';
exit;
}
$handle = opendir( $captchaDir );
$fileAccessCode = substr( md5( $accessCode ), 0, 12 );
while ( $captchaFile = readdir( $handle ) ) {
if ( substr( $captchaFile, 0, 1 ) != '.' ) {
if ( $fileAccessCode == $captchaFile ) {
return true;
}
}
}
return false;
}
function DeleteCaptcha($accessCode) {
$captchaDir = '../captchabestanden/';
if ( !is_dir( $captchaDir ) ) {
echo '<html><head><title>Error</title></head><body>Access Code Validatie Error: directory "../captchabestanden" niet gevonden. Script zal nu stoppen.</body></html>';
exit;
}
$handle = opendir( $captchaDir );
$fileAccessCode = substr( md5( $accessCode ), 0, 12 );
while ( $captchaFile = readdir( $handle ) ) {
if ( ( substr( $captchaFile, 0, 1 ) != '.' ) && ( substr( $captchaFile, 0, 1 ) != '_' ) && ( !is_dir( '../captchabestanden/' . '/' . $captchaFile ) ) ) {
if ( $fileAccessCode == $captchaFile ) {
unlink( '../captchabestanden/' . '/' . $captchaFile );
return;
}
}
}
}
if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$clientIP = $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
$clientIP = $_SERVER['REMOTE_ADDR'];
}
if ( isset($_REQUEST['captchaimage']) ) {
CaptchaGenerator();
exit;
}
$FTGvoornaam = DoStripSlashes( $_POST['voornaam'] );
$FTGachternaam = DoStripSlashes( $_POST['achternaam'] );
$FTGadres = DoStripSlashes( $_POST['adres'] );
$FTGpostcodewoonplaats = DoStripSlashes( $_POST['postcodewoonplaats'] );
$FTGtelefoonnummer = DoStripSlashes( $_POST['telefoonnummer'] );
$FTGemailadres = DoStripSlashes( $_POST['emailadres'] );
$FTGopmerkingen = DoStripSlashes( $_POST['opmerkingen'] );
$FTGbeveiliging = DoStripSlashes( $_POST['beveiliging'] );
$FTGverzenden = DoStripSlashes( $_POST['verzenden'] );
$validationFailed = false;
if (!CheckFTGCaptcha($FTGbeveiliging)) {
$FTGErrorMessage['beveiliging'] = '';
$validationFailed = true;
}
if ($validationFailed === true) {
$errorPage = '<html><head><title>Error</title></head><body>Het formulier is niet verstuurd. probeer het nogmaals.</body></html>';
$errorPage = str_replace('<!--FIELDVALUE:voornaam-->', $FTGvoornaam, $errorPage);
$errorPage = str_replace('<!--FIELDVALUE:achternaam-->', $FTGachternaam, $errorPage);
$errorPage = str_replace('<!--FIELDVALUE:adres-->', $FTGadres, $errorPage);
$errorPage = str_replace('<!--FIELDVALUE:postcodewoonplaats-->', $FTGpostcodewoonplaats, $errorPage);
$errorPage = str_replace('<!--FIELDVALUE:telefoonnummer-->', $FTGtelefoonnummer, $errorPage);
$errorPage = str_replace('<!--FIELDVALUE:emailadres-->', $FTGemailadres, $errorPage);
$errorPage = str_replace('<!--FIELDVALUE:opmerkingen-->', $FTGopmerkingen, $errorPage);
$errorPage = str_replace('<!--FIELDVALUE:beveiliging-->', $FTGbeveiliging, $errorPage);
$errorPage = str_replace('<!--FIELDVALUE:verzenden-->', $FTGverzenden, $errorPage);
$errorList = @implode("<br />\n", $FTGErrorMessage);
$errorPage = str_replace('<!--VALIDATIONERROR-->', $errorList, $errorPage);
echo $errorPage;
}
if ( $validationFailed === false ) {
$emailSubject = FilterCChars("Hier komt de titel van de e-mail die je zelf krijgt.");
$emailBody = "Voornaam : $FTGvoornaam\n"
. "Achternaam : $FTGachternaam\n"
. "Adres : $FTGadres\n"
. "Postcode + woonplaats : $FTGpostcodewoonplaats\n"
. "Telefoonnummer : $FTGtelefoonnummer\n"
. "E-mailadres : $FTGemailadres\n"
. "Opmerkingen : $FTGopmerkingen";
$emailTo = 'jouw naam <[email protected]>';
$emailFrom = FilterCChars("[email protected]");
$emailHeader = "From: $emailFrom\n"
. "MIME-Version: 1.0\n"
. "Content-type: text/plain; charset=\"ISO-8859-1\"\n"
. "Content-transfer-encoding: 7bit\n";
mail($emailTo, $emailSubject, $emailBody, $emailHeader);
DeleteCaptcha($FTGbeveiliging);
$successPage = '<html><head><title>Success</title></head><body>Het formulier is succesvol verstuurd.</body></html>';
$successPage = str_replace('<!--FIELDVALUE:voornaam-->', $FTGvoornaam, $successPage);
$successPage = str_replace('<!--FIELDVALUE:achternaam-->', $FTGachternaam, $successPage);
$successPage = str_replace('<!--FIELDVALUE:adres-->', $FTGadres, $successPage);
$successPage = str_replace('<!--FIELDVALUE:postcodewoonplaats-->', $FTGpostcodewoonplaats, $successPage);
$successPage = str_replace('<!--FIELDVALUE:telefoonnummer-->', $FTGtelefoonnummer, $successPage);
$successPage = str_replace('<!--FIELDVALUE:emailadres-->', $FTGemailadres, $successPage);
$successPage = str_replace('<!--FIELDVALUE:opmerkingen-->', $FTGopmerkingen, $successPage);
$successPage = str_replace('<!--FIELDVALUE:beveiliging-->', $FTGbeveiliging, $successPage);
$successPage = str_replace('<!--FIELDVALUE:verzenden-->', $FTGverzenden, $successPage);
echo $successPage;
}
?>
define('kOptional', true);
define('kMandatory', false);
error_reporting(E_ERROR | E_WARNING | E_PARSE);
ini_set('track_errors', true);
function CaptchaGenerator() {
if ( (!function_exists('imagejpeg')) && (!function_exists('imagepng')) ) {
exit;
}
$im = imagecreate(100,40);
$white = imagecolorallocate($im, 255, 255, 255);
$black = imagecolorallocate($im, 0, 0, 0);
$gray = imagecolorallocate($im, 150, 150, 150);
imagerectangle($im, 0, 0, 25, 39, $gray);
imagerectangle($im, 25, 0, 50, 39, $gray);
imagerectangle($im, 50, 0, 75, 39, $gray);
imagerectangle($im, 75, 0, 99, 39, $gray);
imageline($im, 0, 0, 25, 39, $gray);
imageline($im, 25, 0, 50, 39, $gray);
imageline($im, 50, 0, 75, 39, $gray);
imageline($im, 75, 0, 99, 39, $gray);
imageline($im, 0, 39, 25, 0, $gray);
imageline($im, 25, 39, 50, 0, $gray);
imageline($im, 50, 39, 75, 0, $gray);
imageline($im, 75, 39, 99, 0, $gray);
$c1 = rand(65, 90);
$c2 = rand(65, 90);
$c3 = rand(65, 90);
$c4 = rand(65, 90);
$c5 = rand(65, 90);
$textOut = chr($c1) . ' ' . chr($c2) . ' ' . chr($c3) . ' ' . chr($c4) . ' ' . chr($c5);
$textCaptcha = chr($c1) . chr($c2) . chr($c3) . chr($c4) . chr($c5);
$a = imagestring($im, 5, 11, 13, $textOut, $black);
$fileName = substr(md5($textCaptcha), 0, 12);
$captchaDir = '../captchabestanden/';
if ( !is_dir( $captchaDir ) ) {
echo '<html><head><title>Error</title></head><body>Access Code Validatie Error: directory "../captchabestanden" niet gevonden. Script zal nu stoppen.</body></html>';
exit;
}
if ( !is_writable( $captchaDir ) ) {
echo '<html><head><title>Error</title></head><body>Access Code Validatie Error: directory "../captchabestanden" is niet beschrijfbaar. Script zal nu stoppen.</body></html>';
exit;
}
$handle = opendir( $captchaDir );
while ( $captchaFile = readdir($handle) ) {
if ( ( substr($captchaFile, 0, 1) != '.' ) && ( substr($captchaFile, 0, 1) != '_' ) && ( !is_dir( '../captchabestanden/' . '/' . $captchaFile ) ) ) {
if ( ( filemtime( '../captchabestanden/' . '/' . $captchaFile ) + 300 ) < time() ) {
unlink( '../captchabestanden/' . '/' . $captchaFile );
}
}
}
closedir( $handle );
$handle = @fopen( '../captchabestanden/' . '/' . $fileName, 'w' );
if ( !$handle ) {
echo '<html><head><title>Error</title></head><body>Access Code Validatie Error: het is onmogelijk gebleken om een captcha controle bestand te maken. Script zal nu stoppen.</body></html>';
exit;
}
fclose($handle);
if (imagetypes() & IMG_JPG) {
header('Content-type: image/jpeg');
imagejpeg($im);
} elseif (imagetypes() & IMG_PNG) {
header('Content-type: image/png');
imagepng($im);
}
exit;
}
function DoStripSlashes($fieldValue) {
if ( get_magic_quotes_gpc() ) {
if (is_array($fieldValue) ) {
return array_map('DoStripSlashes', $fieldValue);
} else {
return stripslashes($fieldValue);
}
} else {
return $fieldValue;
}
}
function FilterCChars($theString) {
return preg_replace('/[\x00-\x1F]/', '', $theString);
}
function CheckFTGCaptcha($accessCode) {
$captchaDir = '../captchabestanden/';
if ( !is_dir( $captchaDir ) ) {
echo '<html><head><title>Error</title></head><body>Access Code Validatie Error: directory "../captchabestanden" niet gevonden. Script zal nu stoppen.</body></html>';
exit;
}
$handle = opendir( $captchaDir );
$fileAccessCode = substr( md5( $accessCode ), 0, 12 );
while ( $captchaFile = readdir( $handle ) ) {
if ( substr( $captchaFile, 0, 1 ) != '.' ) {
if ( $fileAccessCode == $captchaFile ) {
return true;
}
}
}
return false;
}
function DeleteCaptcha($accessCode) {
$captchaDir = '../captchabestanden/';
if ( !is_dir( $captchaDir ) ) {
echo '<html><head><title>Error</title></head><body>Access Code Validatie Error: directory "../captchabestanden" niet gevonden. Script zal nu stoppen.</body></html>';
exit;
}
$handle = opendir( $captchaDir );
$fileAccessCode = substr( md5( $accessCode ), 0, 12 );
while ( $captchaFile = readdir( $handle ) ) {
if ( ( substr( $captchaFile, 0, 1 ) != '.' ) && ( substr( $captchaFile, 0, 1 ) != '_' ) && ( !is_dir( '../captchabestanden/' . '/' . $captchaFile ) ) ) {
if ( $fileAccessCode == $captchaFile ) {
unlink( '../captchabestanden/' . '/' . $captchaFile );
return;
}
}
}
}
if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$clientIP = $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
$clientIP = $_SERVER['REMOTE_ADDR'];
}
if ( isset($_REQUEST['captchaimage']) ) {
CaptchaGenerator();
exit;
}
$FTGvoornaam = DoStripSlashes( $_POST['voornaam'] );
$FTGachternaam = DoStripSlashes( $_POST['achternaam'] );
$FTGadres = DoStripSlashes( $_POST['adres'] );
$FTGpostcodewoonplaats = DoStripSlashes( $_POST['postcodewoonplaats'] );
$FTGtelefoonnummer = DoStripSlashes( $_POST['telefoonnummer'] );
$FTGemailadres = DoStripSlashes( $_POST['emailadres'] );
$FTGopmerkingen = DoStripSlashes( $_POST['opmerkingen'] );
$FTGbeveiliging = DoStripSlashes( $_POST['beveiliging'] );
$FTGverzenden = DoStripSlashes( $_POST['verzenden'] );
$validationFailed = false;
if (!CheckFTGCaptcha($FTGbeveiliging)) {
$FTGErrorMessage['beveiliging'] = '';
$validationFailed = true;
}
if ($validationFailed === true) {
$errorPage = '<html><head><title>Error</title></head><body>Het formulier is niet verstuurd. probeer het nogmaals.</body></html>';
$errorPage = str_replace('<!--FIELDVALUE:voornaam-->', $FTGvoornaam, $errorPage);
$errorPage = str_replace('<!--FIELDVALUE:achternaam-->', $FTGachternaam, $errorPage);
$errorPage = str_replace('<!--FIELDVALUE:adres-->', $FTGadres, $errorPage);
$errorPage = str_replace('<!--FIELDVALUE:postcodewoonplaats-->', $FTGpostcodewoonplaats, $errorPage);
$errorPage = str_replace('<!--FIELDVALUE:telefoonnummer-->', $FTGtelefoonnummer, $errorPage);
$errorPage = str_replace('<!--FIELDVALUE:emailadres-->', $FTGemailadres, $errorPage);
$errorPage = str_replace('<!--FIELDVALUE:opmerkingen-->', $FTGopmerkingen, $errorPage);
$errorPage = str_replace('<!--FIELDVALUE:beveiliging-->', $FTGbeveiliging, $errorPage);
$errorPage = str_replace('<!--FIELDVALUE:verzenden-->', $FTGverzenden, $errorPage);
$errorList = @implode("<br />\n", $FTGErrorMessage);
$errorPage = str_replace('<!--VALIDATIONERROR-->', $errorList, $errorPage);
echo $errorPage;
}
if ( $validationFailed === false ) {
$emailSubject = FilterCChars("Hier komt de titel van de e-mail die je zelf krijgt.");
$emailBody = "Voornaam : $FTGvoornaam\n"
. "Achternaam : $FTGachternaam\n"
. "Adres : $FTGadres\n"
. "Postcode + woonplaats : $FTGpostcodewoonplaats\n"
. "Telefoonnummer : $FTGtelefoonnummer\n"
. "E-mailadres : $FTGemailadres\n"
. "Opmerkingen : $FTGopmerkingen";
$emailTo = 'jouw naam <[email protected]>';
$emailFrom = FilterCChars("[email protected]");
$emailHeader = "From: $emailFrom\n"
. "MIME-Version: 1.0\n"
. "Content-type: text/plain; charset=\"ISO-8859-1\"\n"
. "Content-transfer-encoding: 7bit\n";
mail($emailTo, $emailSubject, $emailBody, $emailHeader);
DeleteCaptcha($FTGbeveiliging);
$successPage = '<html><head><title>Success</title></head><body>Het formulier is succesvol verstuurd.</body></html>';
$successPage = str_replace('<!--FIELDVALUE:voornaam-->', $FTGvoornaam, $successPage);
$successPage = str_replace('<!--FIELDVALUE:achternaam-->', $FTGachternaam, $successPage);
$successPage = str_replace('<!--FIELDVALUE:adres-->', $FTGadres, $successPage);
$successPage = str_replace('<!--FIELDVALUE:postcodewoonplaats-->', $FTGpostcodewoonplaats, $successPage);
$successPage = str_replace('<!--FIELDVALUE:telefoonnummer-->', $FTGtelefoonnummer, $successPage);
$successPage = str_replace('<!--FIELDVALUE:emailadres-->', $FTGemailadres, $successPage);
$successPage = str_replace('<!--FIELDVALUE:opmerkingen-->', $FTGopmerkingen, $successPage);
$successPage = str_replace('<!--FIELDVALUE:beveiliging-->', $FTGbeveiliging, $successPage);
$successPage = str_replace('<!--FIELDVALUE:verzenden-->', $FTGverzenden, $successPage);
echo $successPage;
}
?>
METSPAMBEVEILIGING.HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>contactformulier HD-Assendelft</title>
<style type="text/css">
<!--
-->
</style>
</head>
<body>
<form id="contactformulier" name="contactformulier" method="post" action="formulier/contactformulier.php">
<table width="614" border="0" align="center">
<tr>
<td colspan="2"><h4><span class="style1">Contactformulier HD-Assendelft</span></h4></td>
</tr>
<tr>
<td>Voornaam:</td>
<td><label>
<input type="text" name="voornaam" id="voornaam" />
</label></td>
</tr>
<tr>
<td>Achternaam:</td>
<td><label>
<input type="text" name="achternaam" id="achternaam" />
</label></td>
</tr>
<tr>
<td>Adres:</td>
<td><label>
<input type="text" name="adres" id="adres" />
</label></td>
</tr>
<tr>
<td>Postcode + woonplaats:</td>
<td><label>
<input type="text" name="postcodewoonplaats" id="postcodewoonplaats" />
</label></td>
</tr>
<tr>
<td>Telefoonnummer:</td>
<td><label>
<input type="text" name="telefoonnummer" id="telefoonnummer" />
</label></td>
</tr>
<tr>
<td>E-mailadres:</td>
<td><label>
<input type="text" name="emailadres" id="emailadres" />
</label></td>
</tr>
<tr>
<td>Opmerkingen</td>
<td><label>
<textarea name="opmerkingen" id="opmerkingen" cols="45" rows="5"></textarea>
</label></td>
</tr>
<tr>
<td>Captcha - <img src="http://www.hd-assendelft.nl/formulier/contactformulier.php?captchaimage=yes" /></td>
<td><label>
<input type="text" name="beveiliging" id="beveiliging" />
</label></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="verzenden" id="verzenden" value="verzenden" /></td>
</tr>
</table>
</form>
</body>
</html>
Gewijzigd op 16/02/2011 21:25:53 door Rens Degenhart
Rens Degenhart op 01/02/2011 18:08:53:
Graag in het vervolg bij code, [code] [/code] tags gebruiken. [/modedit]