send bcc on checked checkbox
Ik heb een mail formuliertje maar nu moet er een optie in om een bcc van het mailtje te sturen naar de persoon die het mailtje maakt.
Zie hieronder de hele 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
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
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
<?php
// Controleren of de server wat wil versturen.
if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
// De variabele $error aanmaken
$error = '';
// Controleren of de velden juist zijn ingevuld.
if(empty($_POST['naam']))
$error .= "U heeft geen <strong>naam</strong> ingevuld.<br />\n";
if(empty($_POST['email']))
$error .= "U heeft geen <strong>emailadres</strong> ingevuld.<br />\n";
if(!empty($_POST['email']) and !preg_match('/^[A-Za-z0-9._-]+@[A-Za-z0-9._-]+\.[A-Za-z]{2,6}$/', $_POST['email']))
$error .= "U heeft een ongeldig <strong>emailadres</strong> ingevuld.<br />\n";
if(empty($_POST['land']))
$error .= "U heeft geen <strong>land</strong> aangevinkt.<br />\n";
if(empty($_POST['onderwerp']))
$error .= "U heeft geen <strong>onderwerp</strong> ingevuld.<br />\n";
if(empty($_POST['bericht']))
$error .= "U heeft geen <strong>bericht</strong> ingevuld.<br />\n";
// Controleren of er iets niet correct is ingevuld. Zo ja, dan geven we een foutmelding.
if( $error )
{
echo "<h3 style=\"color: #f00;\">Fout</h3>\n";
echo "<p>" . $error . "</p>";
}
// Zijn de gegevens juist, dan kunnen we beginnen met het verzenden.
else
{
// De gegevens in een bericht zetten
$bericht = "=============================
Afzender: " . $_POST['naam'] . "
Emailadres: " . $_POST['email'] . "
IP-adres: " . $_SERVER['REMOTE_ADDR'] . "
Land: " . $_POST['land'] . "
Copy: " . $_POST['copy'] . "
Onderwerp: " . $_POST['onderwerp'] . "
Bericht:
-------------------------------------------
" . $_POST['bericht'] . "
-------------------------------------------
=============================";
// Nu gaan we de email verzenden
if (@mail("[email protected]",$_POST['onderwerp'],$bericht,"From: " . $_POST['naam'] . " <" . $_POST['email'] . ">"))
{
// Als de email is verzonden geven we dit netjes aan.
echo "<p>Uw email is succesvol verzonden, bedankt!<br> Er wordt zo snel mogelijk contact met u opgenomen</p>\n";
}
else
{
// Zo niet, dan geven we een foutmelding.
echo "<h3 style=\"color: #f00;\">Fout</h3>\n";
echo "<p>De email kon niet verzonden worden, email mij direct via [email protected]</p>\n";
}
}
}
// Wanneer er niets verzonden wordt of wanneer er een foutmelding is, formulier weergeven
if( (!empty($error)) or $_SERVER['REQUEST_METHOD'] != "POST" )
{
// Nette manier van variabele opvragen en in het formulier zetten via een verkorte if-else.
$naam = isset($_POST['naam']) ? $_POST['naam'] : '';
$email = isset($_POST['email']) ? $_POST['email'] : '';
$land = isset($_POST['land']) ? $_POST['land'] : '';
$onderwerp = isset($_POST['onderwerp']) ? $_POST['onderwerp'] : '';
$bericht = isset($_POST['bericht']) ? $_POST['bericht'] : '';
$copy = isset($_POST['copy']) ? $_POST['copy'] : '';
?>
<!-- $_SERVER['PHP_SELF'] IS HETZELFDE ALS DE BESTAANDE NAAM VAN DE PAGINA. (HANDIG WANNEER DE NAAM VERANDERD WORDT) -->
<form name="contact" id="contact" action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td width="150">
Uw naam:
</td>
<td height="35">
<input type="text" size="45" id="naam" name="naam" value="<?php echo $naam; ?>" />
</td>
</tr>
<tr>
<td>
Uw email:
</td>
<td height="35">
<input type="text" size="45" id="email" name="email" value="<?php echo $email; ?>" />
</td>
</tr>
<tr>
<td>
Waar woont u:
</td>
<td>
<input type="radio" name="land" id="land_nederland" value="nederland" <?php echo ( isset($_POST['land']) and $_POST['land'] == 'nederland' ) ? ' checked="checked"' : '' ?> /> Nederland
<input type="radio" name="land" id="land_canada" value="canada" <?php echo ( isset($_POST['land']) and $_POST['land'] == 'canada' ) ? ' checked="checked"' : '' ?> /> Canada
</td>
</tr>
<tr>
<td>
Onderwerp:
</td>
<td height="35">
<input type="text" size="45" id="onderwerp" name="onderwerp" value="<?php echo $onderwerp; ?>" />
</td>
</tr>
<tr>
<td valign="top" style="padding-top:10px;">
Bericht:
</td>
<td>
<textarea id="bericht" style="width:322px; height:100px; margin-top:10px;" name="bericht"><?php echo $bericht; ?></textarea>
</td>
</tr>
<tr>
<td>
Stuur mij een kopie
</td>
<td>
<input type="checkbox" name="copy" value="ja" <?php echo ( isset($_POST['copy']) and $_POST['copy'] == 'ja' ) ? ' checked="checked"' : '' ?>/>
</td>
</tr>
<tr>
<td> </td>
<td style="padding-top:25px;">
<input type="submit" value="Verstuur" />
</td>
</tr>
</form>
</td>
</tr>
</table>
<?
// Niet vergeten af te sluiten
}
?>
// Controleren of de server wat wil versturen.
if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
// De variabele $error aanmaken
$error = '';
// Controleren of de velden juist zijn ingevuld.
if(empty($_POST['naam']))
$error .= "U heeft geen <strong>naam</strong> ingevuld.<br />\n";
if(empty($_POST['email']))
$error .= "U heeft geen <strong>emailadres</strong> ingevuld.<br />\n";
if(!empty($_POST['email']) and !preg_match('/^[A-Za-z0-9._-]+@[A-Za-z0-9._-]+\.[A-Za-z]{2,6}$/', $_POST['email']))
$error .= "U heeft een ongeldig <strong>emailadres</strong> ingevuld.<br />\n";
if(empty($_POST['land']))
$error .= "U heeft geen <strong>land</strong> aangevinkt.<br />\n";
if(empty($_POST['onderwerp']))
$error .= "U heeft geen <strong>onderwerp</strong> ingevuld.<br />\n";
if(empty($_POST['bericht']))
$error .= "U heeft geen <strong>bericht</strong> ingevuld.<br />\n";
// Controleren of er iets niet correct is ingevuld. Zo ja, dan geven we een foutmelding.
if( $error )
{
echo "<h3 style=\"color: #f00;\">Fout</h3>\n";
echo "<p>" . $error . "</p>";
}
// Zijn de gegevens juist, dan kunnen we beginnen met het verzenden.
else
{
// De gegevens in een bericht zetten
$bericht = "=============================
Afzender: " . $_POST['naam'] . "
Emailadres: " . $_POST['email'] . "
IP-adres: " . $_SERVER['REMOTE_ADDR'] . "
Land: " . $_POST['land'] . "
Copy: " . $_POST['copy'] . "
Onderwerp: " . $_POST['onderwerp'] . "
Bericht:
-------------------------------------------
" . $_POST['bericht'] . "
-------------------------------------------
=============================";
// Nu gaan we de email verzenden
if (@mail("[email protected]",$_POST['onderwerp'],$bericht,"From: " . $_POST['naam'] . " <" . $_POST['email'] . ">"))
{
// Als de email is verzonden geven we dit netjes aan.
echo "<p>Uw email is succesvol verzonden, bedankt!<br> Er wordt zo snel mogelijk contact met u opgenomen</p>\n";
}
else
{
// Zo niet, dan geven we een foutmelding.
echo "<h3 style=\"color: #f00;\">Fout</h3>\n";
echo "<p>De email kon niet verzonden worden, email mij direct via [email protected]</p>\n";
}
}
}
// Wanneer er niets verzonden wordt of wanneer er een foutmelding is, formulier weergeven
if( (!empty($error)) or $_SERVER['REQUEST_METHOD'] != "POST" )
{
// Nette manier van variabele opvragen en in het formulier zetten via een verkorte if-else.
$naam = isset($_POST['naam']) ? $_POST['naam'] : '';
$email = isset($_POST['email']) ? $_POST['email'] : '';
$land = isset($_POST['land']) ? $_POST['land'] : '';
$onderwerp = isset($_POST['onderwerp']) ? $_POST['onderwerp'] : '';
$bericht = isset($_POST['bericht']) ? $_POST['bericht'] : '';
$copy = isset($_POST['copy']) ? $_POST['copy'] : '';
?>
<!-- $_SERVER['PHP_SELF'] IS HETZELFDE ALS DE BESTAANDE NAAM VAN DE PAGINA. (HANDIG WANNEER DE NAAM VERANDERD WORDT) -->
<form name="contact" id="contact" action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td width="150">
Uw naam:
</td>
<td height="35">
<input type="text" size="45" id="naam" name="naam" value="<?php echo $naam; ?>" />
</td>
</tr>
<tr>
<td>
Uw email:
</td>
<td height="35">
<input type="text" size="45" id="email" name="email" value="<?php echo $email; ?>" />
</td>
</tr>
<tr>
<td>
Waar woont u:
</td>
<td>
<input type="radio" name="land" id="land_nederland" value="nederland" <?php echo ( isset($_POST['land']) and $_POST['land'] == 'nederland' ) ? ' checked="checked"' : '' ?> /> Nederland
<input type="radio" name="land" id="land_canada" value="canada" <?php echo ( isset($_POST['land']) and $_POST['land'] == 'canada' ) ? ' checked="checked"' : '' ?> /> Canada
</td>
</tr>
<tr>
<td>
Onderwerp:
</td>
<td height="35">
<input type="text" size="45" id="onderwerp" name="onderwerp" value="<?php echo $onderwerp; ?>" />
</td>
</tr>
<tr>
<td valign="top" style="padding-top:10px;">
Bericht:
</td>
<td>
<textarea id="bericht" style="width:322px; height:100px; margin-top:10px;" name="bericht"><?php echo $bericht; ?></textarea>
</td>
</tr>
<tr>
<td>
Stuur mij een kopie
</td>
<td>
<input type="checkbox" name="copy" value="ja" <?php echo ( isset($_POST['copy']) and $_POST['copy'] == 'ja' ) ? ' checked="checked"' : '' ?>/>
</td>
</tr>
<tr>
<td> </td>
<td style="padding-top:25px;">
<input type="submit" value="Verstuur" />
</td>
</tr>
</form>
</td>
</tr>
</table>
<?
// Niet vergeten af te sluiten
}
?>
Zoals je ziet heb ik al het een en ander geprobeerd.
Nu is het wel zo dat als de checkbox aangevinkt wordt er in het mailtje aangegeven wordt dat de persoon ook een kopie naar zich zelf heeft verstuurd alleen dat moet dus ook gebeuren
Thnx in advance
php documentatie kijken, je zal bij de headers wat moeten bijvoegen.
Hiervoor moet je even daar de Heb ik ook al gebrobeerd maar wil niet echt werken. Kan ook dat ik het niet goed doe, maar kom er niet uit ben nu al twee dagen bezig :-( wordt er een beetje gek van..
Nou, zo moet het, dus ik zou nog eens opnieuw lezen. Er staan ook enkele voorbeeldjes bij die BBC gebruiken..
THNX