Mail + bijlage (en antispam?)
Nu vroeg ik mij af kan iemand mij helpen bij het PHP verstuur gedeelte, want er moet tekst worden verzonden naar e-mail met foto als bijlage...
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
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
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Titel</title>
<link href="stylesheet1.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form action="formmail.php" method="post" enctype="multipart/form-data" name="Reproticket" id="Reproticket">
<fieldset><legend class="style2">Persoonsgegevens </legend>
<br />
<table width="533" border="0" cellpadding="1" cellspacing="0" class="style1">
<tr>
<td width="219"><span class="style1">M/V</span></td>
<td width="310"><p>
<label>
<input type="radio" name="MV" value="radio" />
M</label>
<label>
<input type="radio" name="MV" value="radio" />
V</label>
<br />
</p></td>
</tr>
<tr>
<td class="style1"><span class="style8">Voornaam</span></td>
<td><input name="voornaam" type="text" id="textfield" size="30" maxlength="50" /></td>
</tr>
<tr>
<td class="style1"><span class="style8">Achternaam</span></td>
<td><input name="achternaam" type="text" size="30" maxlength="50" /></td>
</tr>
<tr>
<td class="style1"><span class="style8">Straat + Huisnummer </span></td>
<td><input name="straat" type="text" id="straat" size="30" maxlength="50" />
<input name="huisnummer" type="text" size="6" maxlength="6" /></td>
</tr>
<tr>
<td class="style1"><span class="style8">Postcode + Plaats </span></td>
<td><input name="postcode" type="text" id="postcode" size="7" maxlength="7" />
<input name="plaats" type="text" size="29" maxlength="50" /></td>
</tr>
<tr>
<td class="style1"><span class="style8">E-mailadres</span></td>
<td><input name="textfield" type="text" size="42" maxlength="70" /></td>
</tr>
<tr>
<td class="style1">Wilt u op de hoogte blijven van kortingen/aanbiedingen? </td>
<td><p>
<label><input type="radio" name="Op de hoogte blijven" value="radio" />Ja</label>
<label><input type="radio" name="Op de hoogte blijven" value="radio" />Nee</label>
<br /></p></td>
</tr>
</table>
<br />
</fieldset>
<fieldset><legend><span class="style2">Student/Vereniging </span> </legend>
<br />
<table width="533" border="0" cellpadding="1" cellspacing="0" class="style1">
<tr>
<td width="219">Student / Vereniging </td>
<td width="310"><select name="Vereniging/Student" size="1" multiple="multiple" id="Vereniging/Student">
<option selected="selected">Student</option>
<option>Vereniging</option>
</select> </td>
</tr>
<tr>
<td>Naam vereniging/school </td>
<td><input name="Naam V/S" type="text" id="Naam V/S" size="30" maxlength="50" /></td>
</tr>
<tr>
<td>Straat + Huisnummer </td>
<td><input name="straat2" type="text" id="straat2" size="30" maxlength="50" />
<input name="huisnummer2" type="text" size="6" maxlength="6" /></td>
</tr>
<tr>
<td>Postcode + Plaats </td>
<td><input name="postcode2" type="text" id="postcode2" size="7" maxlength="7" />
<input name="plaats2" type="text" size="29" maxlength="50" /></td>
</tr>
<tr>
<td class="style2"> </td>
<td> </td>
</tr>
<tr>
<td><span class="style2">* Indien student </span></td>
<td> </td>
</tr>
<tr>
<td>Studentennummer</td>
<td><input name="studentennummer" type="text" id="studentennummer" size="30" maxlength="50" /></td>
</tr>
<tr>
<td>Studentenpas (jpg/gif, 500KB max)</td>
<td><input name="studentenpas" type="file" id="studentenpas" size="30" maxlength="50" /></td>
</tr>
</table>
<br />
</fieldset>
<table width="533" border="0" cellspacing="0" cellpadding="1">
<tr>
<td width="77"><div align="center">
<input name="Verzenden" type="submit" id="Verzenden" value="Verzenden">
</div></td>
<td width="15"> </td>
<td width="435"><input name="Wissen" type="reset" id="Wissen" value="Wissen"></td>
</tr>
</table>
</form>
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Titel</title>
<link href="stylesheet1.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form action="formmail.php" method="post" enctype="multipart/form-data" name="Reproticket" id="Reproticket">
<fieldset><legend class="style2">Persoonsgegevens </legend>
<br />
<table width="533" border="0" cellpadding="1" cellspacing="0" class="style1">
<tr>
<td width="219"><span class="style1">M/V</span></td>
<td width="310"><p>
<label>
<input type="radio" name="MV" value="radio" />
M</label>
<label>
<input type="radio" name="MV" value="radio" />
V</label>
<br />
</p></td>
</tr>
<tr>
<td class="style1"><span class="style8">Voornaam</span></td>
<td><input name="voornaam" type="text" id="textfield" size="30" maxlength="50" /></td>
</tr>
<tr>
<td class="style1"><span class="style8">Achternaam</span></td>
<td><input name="achternaam" type="text" size="30" maxlength="50" /></td>
</tr>
<tr>
<td class="style1"><span class="style8">Straat + Huisnummer </span></td>
<td><input name="straat" type="text" id="straat" size="30" maxlength="50" />
<input name="huisnummer" type="text" size="6" maxlength="6" /></td>
</tr>
<tr>
<td class="style1"><span class="style8">Postcode + Plaats </span></td>
<td><input name="postcode" type="text" id="postcode" size="7" maxlength="7" />
<input name="plaats" type="text" size="29" maxlength="50" /></td>
</tr>
<tr>
<td class="style1"><span class="style8">E-mailadres</span></td>
<td><input name="textfield" type="text" size="42" maxlength="70" /></td>
</tr>
<tr>
<td class="style1">Wilt u op de hoogte blijven van kortingen/aanbiedingen? </td>
<td><p>
<label><input type="radio" name="Op de hoogte blijven" value="radio" />Ja</label>
<label><input type="radio" name="Op de hoogte blijven" value="radio" />Nee</label>
<br /></p></td>
</tr>
</table>
<br />
</fieldset>
<fieldset><legend><span class="style2">Student/Vereniging </span> </legend>
<br />
<table width="533" border="0" cellpadding="1" cellspacing="0" class="style1">
<tr>
<td width="219">Student / Vereniging </td>
<td width="310"><select name="Vereniging/Student" size="1" multiple="multiple" id="Vereniging/Student">
<option selected="selected">Student</option>
<option>Vereniging</option>
</select> </td>
</tr>
<tr>
<td>Naam vereniging/school </td>
<td><input name="Naam V/S" type="text" id="Naam V/S" size="30" maxlength="50" /></td>
</tr>
<tr>
<td>Straat + Huisnummer </td>
<td><input name="straat2" type="text" id="straat2" size="30" maxlength="50" />
<input name="huisnummer2" type="text" size="6" maxlength="6" /></td>
</tr>
<tr>
<td>Postcode + Plaats </td>
<td><input name="postcode2" type="text" id="postcode2" size="7" maxlength="7" />
<input name="plaats2" type="text" size="29" maxlength="50" /></td>
</tr>
<tr>
<td class="style2"> </td>
<td> </td>
</tr>
<tr>
<td><span class="style2">* Indien student </span></td>
<td> </td>
</tr>
<tr>
<td>Studentennummer</td>
<td><input name="studentennummer" type="text" id="studentennummer" size="30" maxlength="50" /></td>
</tr>
<tr>
<td>Studentenpas (jpg/gif, 500KB max)</td>
<td><input name="studentenpas" type="file" id="studentenpas" size="30" maxlength="50" /></td>
</tr>
</table>
<br />
</fieldset>
<table width="533" border="0" cellspacing="0" cellpadding="1">
<tr>
<td width="77"><div align="center">
<input name="Verzenden" type="submit" id="Verzenden" value="Verzenden">
</div></td>
<td width="15"> </td>
<td width="435"><input name="Wissen" type="reset" id="Wissen" value="Wissen"></td>
</tr>
</table>
</form>
</body>
</html>
Gewijzigd op 01/01/1970 01:00:00 door Joyce
PHPMailer. Verder hoef je geen 115 regels code te plaatsen. Succes!
Kijk eens naar Swiftmailer of html.mime.mail class op phpguru.org. Gebruik ik ook op deze website als ik alle leden wil spammen. Hij maakt een SMTP verbinding ipv mail() aan te spreken.
Voorbeeld code:
$addresses is een array die ik maak a.d.h.v. de gegevens uit de database. Let op dat de afzender e-mail bekend moet zijn bij de SMTP server. Gebruik bij voorkeur de SMTP server van de server waar je script op loopt. Je eigen mail.chello.nl of mail.xs4all.nl zal dus niet werken :).
Je zou ook eens kunnen kijken naar: Voorbeeld 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
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
<?php
$text = "Test";
$addresses[] = "[email protected]";
$mail = new htmlMimeMail();
$mail->setHTMLCharset('utf-8');
$mail->setHeadCharset('utf-8');
//$mail->addHTMLImage($mail->getFile(BASE_DIR.'mailings/'.$_POST['newsletter'].'/06311-_k.jpg'), '06311-_k.jpg', 'image/jpeg');
//$mail->addHTMLImage($mail->getFile(BASE_DIR.'mailings/'.$_POST['newsletter'].'/bottom-rechts.jpg'), 'bottom-rechts.jpg', 'image/jpeg');
$mail->setHTML($body);
$mail->setSMTPParams('smtp.domeinnaam.nl', 25, 'MAILER');
$mail->setReturnPath("[email protected]");
$mail->setFrom("[email protected]");
$mail->setSubject("Domeinnaam wenst je een fijne kerst en een gelukkig 2007!");
$mail->setHeader('X-Mailer', 'HTML Mime mail class (http://www.phpguru.org)');
$mailerrors = array();
$mailsent = array();
if(is_array($addresses) && count($addresses) > 0) {
foreach($addresses as $mailaddress) {
$result = $mail->send( array($mailaddress) , 'smtp');
if(isset($mail->errors) ) {
$mailerrors[$mailaddress] = $mail->errors;
}
else {
$mailsent[] = $mailaddress;
}
}
}
else {
echo "Er zijn geen geldige mailadressen in het bestand gevonden.";
}
echo "<pre><code>" . var_dump($mailsent) . "</code></pre>";
echo "<pre><code>" . var_dump($mailerrors) . "</code></pre>";
?>
$text = "Test";
$addresses[] = "[email protected]";
$mail = new htmlMimeMail();
$mail->setHTMLCharset('utf-8');
$mail->setHeadCharset('utf-8');
//$mail->addHTMLImage($mail->getFile(BASE_DIR.'mailings/'.$_POST['newsletter'].'/06311-_k.jpg'), '06311-_k.jpg', 'image/jpeg');
//$mail->addHTMLImage($mail->getFile(BASE_DIR.'mailings/'.$_POST['newsletter'].'/bottom-rechts.jpg'), 'bottom-rechts.jpg', 'image/jpeg');
$mail->setHTML($body);
$mail->setSMTPParams('smtp.domeinnaam.nl', 25, 'MAILER');
$mail->setReturnPath("[email protected]");
$mail->setFrom("[email protected]");
$mail->setSubject("Domeinnaam wenst je een fijne kerst en een gelukkig 2007!");
$mail->setHeader('X-Mailer', 'HTML Mime mail class (http://www.phpguru.org)');
$mailerrors = array();
$mailsent = array();
if(is_array($addresses) && count($addresses) > 0) {
foreach($addresses as $mailaddress) {
$result = $mail->send( array($mailaddress) , 'smtp');
if(isset($mail->errors) ) {
$mailerrors[$mailaddress] = $mail->errors;
}
else {
$mailsent[] = $mailaddress;
}
}
}
else {
echo "Er zijn geen geldige mailadressen in het bestand gevonden.";
}
echo "<pre><code>" . var_dump($mailsent) . "</code></pre>";
echo "<pre><code>" . var_dump($mailerrors) . "</code></pre>";
?>
$addresses is een array die ik maak a.d.h.v. de gegevens uit de database. Let op dat de afzender e-mail bekend moet zijn bij de SMTP server. Gebruik bij voorkeur de SMTP server van de server waar je script op loopt. Je eigen mail.chello.nl of mail.xs4all.nl zal dus niet werken :).
Gewijzigd op 01/01/1970 01:00:00 door B a s