opgemaakte mail
en nu wil ik dat er elke keer als er een bepaalde aanmelding is er een email word getuurd naar ieder e-mailadres uit de hele database, hoe doe ik dat?
tegelijkertijd wil ik ook dat de mail mooi is opgemaakt met een logo van mijn site, en een mooie achtergrond, dus eigenlijk gewoon een tabel
die je via e-mail verstuurd, wie kan me helpen?
lijkt mij zelf een beetje lastig maar het kan.
Als je een beetje mooie layout eraan wil hangen moet je zo-ie-zo een header mee sturen...
het staat allemaal uitgelegd op de onderstaande link
http://nl3.php.net/manual/en/function.mail.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
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
<?
// geef e-mail adres op van ontvanger
// $mail_ontv = "[email protected]";
// als er niet op submit is gedrukt, of als er wel op is gedrukt maar niet alles ingevoerd is
if (!$submit || $submit && (!$nr || !$titel || !$bericht || !$datum))
{
if ($submit && (!$titel || !$bericht || !$datum))
{
echo "<p>Je bent je <b>Titel</b>, <b>Bericht</b>, of <b>Datum</b> vergeten!</p>";
}
// versturen naar
else
{
// set datum
$datum = date("d.m.Y H:i");
// set ip
$ip = $REMOTE_ADDR;
$header ="From: $naam<$naam>\r\n";
$header .="Reply-To: $naam<$naam>\r\n";
$header .= "MIME-Version: 1.0\r\n";
$header = "Content-type: text/html; charset=\"iso-8859-1\"\r\n";
$inhoud_mail = "<hr width=80%>\n";
$inhoud_mail .= "Onderwerp : <b>$titel</b>\n";
$inhoud_mail .= "Datum / Tijd : $datum\n\n";
$inhoud_mail .= "Bericht : $bericht\n";
mail($mail_ontv, $titel, $inhoud_mail, $header);
echo "<font face=arial><center>~</font></center>";
} }
?>
// geef e-mail adres op van ontvanger
// $mail_ontv = "[email protected]";
// als er niet op submit is gedrukt, of als er wel op is gedrukt maar niet alles ingevoerd is
if (!$submit || $submit && (!$nr || !$titel || !$bericht || !$datum))
{
if ($submit && (!$titel || !$bericht || !$datum))
{
echo "<p>Je bent je <b>Titel</b>, <b>Bericht</b>, of <b>Datum</b> vergeten!</p>";
}
// versturen naar
else
{
// set datum
$datum = date("d.m.Y H:i");
// set ip
$ip = $REMOTE_ADDR;
$header ="From: $naam<$naam>\r\n";
$header .="Reply-To: $naam<$naam>\r\n";
$header .= "MIME-Version: 1.0\r\n";
$header = "Content-type: text/html; charset=\"iso-8859-1\"\r\n";
$inhoud_mail = "<hr width=80%>\n";
$inhoud_mail .= "Onderwerp : <b>$titel</b>\n";
$inhoud_mail .= "Datum / Tijd : $datum\n\n";
$inhoud_mail .= "Bericht : $bericht\n";
mail($mail_ontv, $titel, $inhoud_mail, $header);
echo "<font face=arial><center>~</font></center>";
} }
?>
(het bericht is nog niet af..)
bovenaan de pagina staat ergens:
$naam = $_SESSION["sess_loginnaam"];
Nu krijg ik wel netjes een mailtje, maar van Anonymous.... ik krijg het met geen mogelijkheid voor elkaar om een HTML bericht te ontvangen waar ook de afzender is ingevuld, als ik de headers weglaat krijg ik gewoon een basic mail, dan staat de afzender er wel in, maak ik er HTML van dan staat de afzender er niet in...
ik heb ook het script geprobeerd van de site: http://nl3.php.net/manual/en/function.mail.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
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
<?php
/* recipients */
$to = "[email protected]" . ", " ; // note the comma
$to .= "[email protected]";
/* subject */
$subject = "Birthday Reminders for August";
/* message */
$message = '
<html>
<head>
<title>Birthday Reminders for August</title>
</head>
<body>
<p>Here are the birthdays upcoming in August!</p>
<table>
<tr>
<th>Person</th><th>Day</th><th>Month</th><th>Year</th>
</tr>
<tr>
<td>Joe</td><td>3rd</td><td>August</td><td>1970</td>
</tr>
<tr>
<td>Sally</td><td>17th</td><td>August</td><td>1973</td>
</tr>
</table>
</body>
</html>
';
/* To send HTML mail, you can set the Content-type header. */
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
/* additional headers */
$headers .= "To: Jochem <[email protected]>, Test <[email protected]>\r\n";
$headers .= "From: Birthday Reminder <[email protected]>\r\n";
/* and now mail it */
mail($to, $subject, $message, $headers);
?>
/* recipients */
$to = "[email protected]" . ", " ; // note the comma
$to .= "[email protected]";
/* subject */
$subject = "Birthday Reminders for August";
/* message */
$message = '
<html>
<head>
<title>Birthday Reminders for August</title>
</head>
<body>
<p>Here are the birthdays upcoming in August!</p>
<table>
<tr>
<th>Person</th><th>Day</th><th>Month</th><th>Year</th>
</tr>
<tr>
<td>Joe</td><td>3rd</td><td>August</td><td>1970</td>
</tr>
<tr>
<td>Sally</td><td>17th</td><td>August</td><td>1973</td>
</tr>
</table>
</body>
</html>
';
/* To send HTML mail, you can set the Content-type header. */
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
/* additional headers */
$headers .= "To: Jochem <[email protected]>, Test <[email protected]>\r\n";
$headers .= "From: Birthday Reminder <[email protected]>\r\n";
/* and now mail it */
mail($to, $subject, $message, $headers);
?>
gewoon even als test geprobeerd, maar ook bij dit mailtje vult hij de afzender niet in.. (en het bericht komt niet als HTML binnen)
Waar kan dit aan liggen??