GD2 key contact formulier
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
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
<?php
$naar = '[email protected]'; // Verander hier [email protected] naar uw eigen email adress.
if(isset($_POST['verzend'])) // Als het bericht verzonden is
{
if($_POST['naam'] == '') // Als het veld naam leeg is
{
echo "U heeft geen naam ingevuld!<br />";
echo "<a href='javascript:history.back();' style='color: orange; text-decoration:none;'>Klik hier om terug te gaan!</a>";
}
elseif($_POST['email'] == '') // Als het veld email leeg is.
{
echo "U heeft geen e-mail adress ingevuld!<br />";
echo "<a href='javascript:history.back();' style='color: orange; text-decoration:none;'>Klik hier om terug te gaan!</a>";
}
elseif($_POST['bericht'] == '') // Als er geen bericht is ingevuld.
{
echo "U heeft geen bericht ingevuld!<br />";
echo "<a href='javascript:history.back();' style='color: orange; text-decoration:none;'>Klik hier om terug te gaan!</a>";
}
elseif($_POST['onderwerp'] == '') // Als er geen onderwerp is ingevuld
{
echo "U heeft geen onderwerp ingevuld!<br />";
echo "<a href='javascript:history.back();' style='color: orange; text-decoration:none;'>Klik hier om terug te gaan!</a>";
}
elseif($_POST['imgcode'] == '$_SESSION') // Als er geen code is ingevuld
{
echo "U heeft geen geldige anti-spam code ingevuld!<br />";
echo "<a href='javascript:history.back();' style='color: orange; text-decoration:none;'>Klik hier om terug te gaan!</a>";
}
else
{
if(!eregi("^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,4})$", $_POST["email"])) // Als het email adress niet klopt
{
echo "U heeft geen geldig e-mail adress ingevuld!<br />";
echo "<a href='javascript:history.back();' style='color: orange; text-decoration:none;'>Klik hier om terug te gaan!</a>";
}
else
{
// Mailen:
$bericht = "
<html>
<head>
<title>Contact fomulier</title>
</head>
<body>
<table border='2' width='50%'>
<tr>
<td width='20%'>Naam:</td>
<td>".$_POST['naam']."</td>
</tr>
<tr>
<td width='20%'>E-mail adress:</td>
<td>".$_POST['email']."</td>
</tr>
<tr>
<td width='20%'>Onderwerp:</td>
<td>".$_POST['onderwerp']."</td>
</tr>
<tr>
<td width='20%'>Bericht:</td>
<td>".$_POST['bericht']."</td>
</tr>
</table>
<br>
</body>
</html>
";
$headers = "MIME-Version: 1.0\r\n";
$headers.= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers.= "From: ".$_POST['naam']." <".$_POST['email'].">\r\n";
// Headers, zodat we html kunnen gebruiken in de mail, en van wie de mail komt.
if(mail($naar, $_POST['onderwerp'],$bericht,$headers)) // Als de mail naar de maker is verstuurd
{
echo 'Uw bericht is succesvol verstuurd';
}
else // Anders
{
echo 'Uw bericht is helaas niet verstuurd';
}
$ond = "Uw bericht, verzonden naar [email protected]";
if(mail($naar, $ond,$bericht,$headers)) // Als de mail naar de verzender is verstuurd
{
echo '!';
}
else // Anders
{
echo '.';
}
}
}
}
else
{
?>
<!-- Formulier weergeven -->
<table border='0' width='50%'>
<form method='post'>
<tr>
<td width='30%'><b>Contact</b></td>
</tr>
<tr>
<td width='20%'>Naam:</td>
<td><input type='text' name='naam'></td>
</tr>
<tr>
<td width='20%'>E-mail adress:</td>
<td><input type='text' name='email'></td>
</tr>
<tr>
<td width='20%'>Onderwerp:</td>
<td><input type='text' name='onderwerp'></td>
</tr>
<tr>
<td width='20%'>Bericht:</td>
<td><textarea name='bericht'></textarea></td>
</tr>
<tr>
<td></td>
<td><img src="basic/img.php"></td>
</tr>
<tr>
<td width='20%'>Code:</td>
<td><input type='text' name='imgcode'></td>
</tr>
<tr>
<td colspan='2' align='center'><input type='submit' value='Verzend' name='verzend'></td>
</tr>
</form>
</table>
<?php
}
?>
$naar = '[email protected]'; // Verander hier [email protected] naar uw eigen email adress.
if(isset($_POST['verzend'])) // Als het bericht verzonden is
{
if($_POST['naam'] == '') // Als het veld naam leeg is
{
echo "U heeft geen naam ingevuld!<br />";
echo "<a href='javascript:history.back();' style='color: orange; text-decoration:none;'>Klik hier om terug te gaan!</a>";
}
elseif($_POST['email'] == '') // Als het veld email leeg is.
{
echo "U heeft geen e-mail adress ingevuld!<br />";
echo "<a href='javascript:history.back();' style='color: orange; text-decoration:none;'>Klik hier om terug te gaan!</a>";
}
elseif($_POST['bericht'] == '') // Als er geen bericht is ingevuld.
{
echo "U heeft geen bericht ingevuld!<br />";
echo "<a href='javascript:history.back();' style='color: orange; text-decoration:none;'>Klik hier om terug te gaan!</a>";
}
elseif($_POST['onderwerp'] == '') // Als er geen onderwerp is ingevuld
{
echo "U heeft geen onderwerp ingevuld!<br />";
echo "<a href='javascript:history.back();' style='color: orange; text-decoration:none;'>Klik hier om terug te gaan!</a>";
}
elseif($_POST['imgcode'] == '$_SESSION') // Als er geen code is ingevuld
{
echo "U heeft geen geldige anti-spam code ingevuld!<br />";
echo "<a href='javascript:history.back();' style='color: orange; text-decoration:none;'>Klik hier om terug te gaan!</a>";
}
else
{
if(!eregi("^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,4})$", $_POST["email"])) // Als het email adress niet klopt
{
echo "U heeft geen geldig e-mail adress ingevuld!<br />";
echo "<a href='javascript:history.back();' style='color: orange; text-decoration:none;'>Klik hier om terug te gaan!</a>";
}
else
{
// Mailen:
$bericht = "
<html>
<head>
<title>Contact fomulier</title>
</head>
<body>
<table border='2' width='50%'>
<tr>
<td width='20%'>Naam:</td>
<td>".$_POST['naam']."</td>
</tr>
<tr>
<td width='20%'>E-mail adress:</td>
<td>".$_POST['email']."</td>
</tr>
<tr>
<td width='20%'>Onderwerp:</td>
<td>".$_POST['onderwerp']."</td>
</tr>
<tr>
<td width='20%'>Bericht:</td>
<td>".$_POST['bericht']."</td>
</tr>
</table>
<br>
</body>
</html>
";
$headers = "MIME-Version: 1.0\r\n";
$headers.= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers.= "From: ".$_POST['naam']." <".$_POST['email'].">\r\n";
// Headers, zodat we html kunnen gebruiken in de mail, en van wie de mail komt.
if(mail($naar, $_POST['onderwerp'],$bericht,$headers)) // Als de mail naar de maker is verstuurd
{
echo 'Uw bericht is succesvol verstuurd';
}
else // Anders
{
echo 'Uw bericht is helaas niet verstuurd';
}
$ond = "Uw bericht, verzonden naar [email protected]";
if(mail($naar, $ond,$bericht,$headers)) // Als de mail naar de verzender is verstuurd
{
echo '!';
}
else // Anders
{
echo '.';
}
}
}
}
else
{
?>
<!-- Formulier weergeven -->
<table border='0' width='50%'>
<form method='post'>
<tr>
<td width='30%'><b>Contact</b></td>
</tr>
<tr>
<td width='20%'>Naam:</td>
<td><input type='text' name='naam'></td>
</tr>
<tr>
<td width='20%'>E-mail adress:</td>
<td><input type='text' name='email'></td>
</tr>
<tr>
<td width='20%'>Onderwerp:</td>
<td><input type='text' name='onderwerp'></td>
</tr>
<tr>
<td width='20%'>Bericht:</td>
<td><textarea name='bericht'></textarea></td>
</tr>
<tr>
<td></td>
<td><img src="basic/img.php"></td>
</tr>
<tr>
<td width='20%'>Code:</td>
<td><input type='text' name='imgcode'></td>
</tr>
<tr>
<td colspan='2' align='center'><input type='submit' value='Verzend' name='verzend'></td>
</tr>
</form>
</table>
<?php
}
?>
Gewijzigd op 01/01/1970 01:00:00 door Hans Q
het liefst op een methode net als hij de naam en email veld controleerd..
Gewijzigd op 01/01/1970 01:00:00 door Hans Q
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<?php
//hier start de session
session_start();
//hier zegen we tegen de browser dat het om een afbeelding
header("Content-type: image/jpeg");
//deze functie begin je de afbeelding
$img = @imagecreate(100,20);
// Met deze functie stel je een kleur waarden in 255 is geen van alle kleuren en 0 is alle kleuren bij elkaar
// door voor de grafische mensen onder ons is 255 de nul waarden
$bg = imagecolorallocate($img, 255, 255, 255);
$txt = imagecolorallocate($img, 0, 0, 0);
// hier beginnen we met een random getal te genereren
// ik denk dat srand en rand wel bekend zijn bij de meeste mensen
// maar voor mensen die het niet weten leg ik het toch effe uit
// met srand stel je een seed in voor de rand
// ik gebruik hier time maar je kan ook gewoon alles gebruiken
$seed = time();
$seed = srand($seed);
//met md5 kan je heel een heel mooie code met cijfers en letters genereren
$rand = md5(rand());
//zoals je nu ziet gebruik ik nu date dat is om een andere seed te genereren
$seed2 = date("zs");
$seed2 = srand($seed2);
$start = rand(0,22);
// zoals je mischien al ziet gebruik ik deze random van een willekeurige plek uit de
// 32 karakters lange code een code te plukken van maar 10 karakters lang
$code = substr($rand,$start,10);
// ik sla het op in een sessie zodat je het in een andere script kan vergelijken
// met de echte code en de input van de gebruiker bijv in een if statement
$_SESSION['code'] = $code;
//en hiermee plak je de code op het plaatje
imagestring($img, 10, 5, 2, $_SESSION['code'], $txt);
// hier begint het anti bot truukje
// de nieuwere bots die worden gebruikt bij brute force aanvallen
// die kunnen tekens herken die ze scannen van het plaatje af
// daarom gaan wij het plaatje omdraaien zodat ze niet meer horizontaal te lezen zijn
//random hoef ik niet te vertellen
$angle_choice = date("sz");
$angle_choice = srand($angle_choice);
$angle_choice = rand(1,2);
//dit is eigenlijk een verkorte versie van een if statement ik conroleer de output van
// de random hierboven hier gebeurt ook de selectie of hij cw of ccw draait
$angle_choice = ($angle_choice == 1)?"angle_neg" : "angle_pos";
//als het deze word draait hij cw
$angle_neg = rand(-7,-2);
//alls het deze word draait hij ccw
$angle_pos = rand(7,2);
//deze functie draait de bron afbeelding om in de hoek die opgegeven is en plakt die
// in een nieuwe afbeelding
$rotate = imagerotate($img,$$angle_choice,$bg);
//nu maken we van onze code een output
imagejpeg($rotate);
//en nu vernietigen we het plaatje
imagedestroy($rotate);
imagedestroy($img);
?>
//hier start de session
session_start();
//hier zegen we tegen de browser dat het om een afbeelding
header("Content-type: image/jpeg");
//deze functie begin je de afbeelding
$img = @imagecreate(100,20);
// Met deze functie stel je een kleur waarden in 255 is geen van alle kleuren en 0 is alle kleuren bij elkaar
// door voor de grafische mensen onder ons is 255 de nul waarden
$bg = imagecolorallocate($img, 255, 255, 255);
$txt = imagecolorallocate($img, 0, 0, 0);
// hier beginnen we met een random getal te genereren
// ik denk dat srand en rand wel bekend zijn bij de meeste mensen
// maar voor mensen die het niet weten leg ik het toch effe uit
// met srand stel je een seed in voor de rand
// ik gebruik hier time maar je kan ook gewoon alles gebruiken
$seed = time();
$seed = srand($seed);
//met md5 kan je heel een heel mooie code met cijfers en letters genereren
$rand = md5(rand());
//zoals je nu ziet gebruik ik nu date dat is om een andere seed te genereren
$seed2 = date("zs");
$seed2 = srand($seed2);
$start = rand(0,22);
// zoals je mischien al ziet gebruik ik deze random van een willekeurige plek uit de
// 32 karakters lange code een code te plukken van maar 10 karakters lang
$code = substr($rand,$start,10);
// ik sla het op in een sessie zodat je het in een andere script kan vergelijken
// met de echte code en de input van de gebruiker bijv in een if statement
$_SESSION['code'] = $code;
//en hiermee plak je de code op het plaatje
imagestring($img, 10, 5, 2, $_SESSION['code'], $txt);
// hier begint het anti bot truukje
// de nieuwere bots die worden gebruikt bij brute force aanvallen
// die kunnen tekens herken die ze scannen van het plaatje af
// daarom gaan wij het plaatje omdraaien zodat ze niet meer horizontaal te lezen zijn
//random hoef ik niet te vertellen
$angle_choice = date("sz");
$angle_choice = srand($angle_choice);
$angle_choice = rand(1,2);
//dit is eigenlijk een verkorte versie van een if statement ik conroleer de output van
// de random hierboven hier gebeurt ook de selectie of hij cw of ccw draait
$angle_choice = ($angle_choice == 1)?"angle_neg" : "angle_pos";
//als het deze word draait hij cw
$angle_neg = rand(-7,-2);
//alls het deze word draait hij ccw
$angle_pos = rand(7,2);
//deze functie draait de bron afbeelding om in de hoek die opgegeven is en plakt die
// in een nieuwe afbeelding
$rotate = imagerotate($img,$$angle_choice,$bg);
//nu maken we van onze code een output
imagejpeg($rotate);
//en nu vernietigen we het plaatje
imagedestroy($rotate);
imagedestroy($img);
?>
als ik onderaan een echo plaats met de variable $code vind hij de variable niet dus echo't hij gewoon op de pagina "$code" dus darom kan hij niet worden verzonden... hoe kan ik dit oplossen?
karoen schreef op 29.08.2007 20:48:
hoe moet ik het dan anders maken dat hij controleerd of het goed is?
het liefst op een methode net als hij de naam en email veld controleerd..
het liefst op een methode net als hij de naam en email veld controleerd..
Je vergelijkt nu of het veld gelijk is aan de string "$_SESSION" dus niet aan een session.
ik heb het nu inplaats van $_SESSION er $code van gamaakt... maar het werkt niet...