# HTML Seite als Email versenden



## son gohan (14. Mai 2005)

Hallo Leute,

also ganz einfach, ich will eine HTML Seite mit meinem Brwoser erstellen und die dan per Email versenden.

Mit meinem Outlook 2002 ist das mehr als kompliziert und klappt einfach nicht, also hab ich mir gedacht mit PHP machen.

Wie kann ich eine HTML Seite mit PHP an eine beliebige Emailadresse schicken?

Macht es bitte nicht zu kompliziert ich habe keine Ahnung von PHP Tags. 

gruß


----------



## forsterm (14. Mai 2005)

http://de2.php.net/manual/de/function.mail.php


----------



## Gumbo (14. Mai 2005)

PHP bestitzt bereits eine Mail-Funktion, mit der es ganz einfach ist E-Mails zu versenden.

Um nun eine HTML-E-Mail zu versenden, ist nur die Angabe weiterer HTTP-Header nötig (siehe Beispiel 4 der mail()-Funktion). Das ist nicht weiter kompliziert.


----------



## son gohan (14. Mai 2005)

Hi,

ja dank euch, das ging ja schnell.

schönen Tag noch.

gruß
feh


----------



## son gohan (16. Mai 2005)

Hallo,

nochmal eine Frage zu dem Mail versenden.

Auf der Seite von PHP.net ist ja ein komplettes Beispiel, wenn ich es aber in mein Browser öffne oder über meinen Server aufrufe, dann sehe ich nichts, eine leere Seite ohne Fehlermeldung.

Normal müsste doch die HTML Seite zu sehen sein mir einem submit Button oder so?

Code:

```
<?php
/* Empfänger */
$to  = "mary@example.com" . ", " ; // beachten Sie das Komma
$to .= "kelly@example.com";

/* Betreff */
$subject = "Geburtstags-Erinnerung für August";

/* Nachricht */
$message = '
<html>
<head>
 <title>Geburtstags-Erinnerung für August</title>
</head>
<body>
<p>Hier sind die Geburtstage im August!</p>
<table>
 <tr>
  <th>Person</th><th>Tag</th><th>Monat</th><th>Jahr</th>
 </tr>
 <tr>
  <td>Joe</td><td>3.</td><td>August</td><td>1970</td>
 </tr>
 <tr>
  <td>Sally</td><td>17.</td><td>August</td><td>1973</td>
 </tr>
</table>
</body>
</html>
';

/* Um eine HTML-Mail zu senden, können Sie den den "Content-type"-Header.
   setzen */
$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

/* zusätzliche Header */
$headers .= "To: Mary <mary@example.com>, Kelly <kelly@example.com>\r\n";
$headers .= "From: Geburtstags-Erinnerung <geburtstag@example.com>\r\n";
$headers .= "Cc: geburtstagsarchiv@example.com\r\n";
$headers .= "Bcc: geburtstagscheck@example.com\r\n";

/* Verschicken der Mail */
mail($to, $subject, $message, $headers);
?>
```


----------



## elmyth (16. Mai 2005)

Was denkst du denn, wirst du sehen?
Das Beispiel gibt keinen HTML-Code aus.


----------



## son gohan (16. Mai 2005)

Hallo elmyth,


also ich dachte das ich wohl den HTML Quellcode sehen müsste und per submit Button die Seite als Email versenden kann.

Von PHP habe ich leider noch keine Ahnung.

Wenn du weist wie das geht dann zeigt es mir doch bitte mal.

gruß
feh


----------



## BeaTBoxX (17. Mai 2005)

Diese Funktion verschickt die Mail nur, weiter nichts!
Wenn du einen Submit Button haben willst dafuer, dann musst du dir einen bauen!

Sinngemäß so:

```
echo 'Email mit den angegebenen Daten verschicken?<br>'."\n"
       .'<form action="index.php" method="POST">'."\n"
       .'<input type="submit" name="sendmailsubmit" value="abschicken">'."\n"
       .'<input type="submit" name="sendmailcancel" value="abbrechen">'."\n"
       .'</form>'."\n";


// und später sinngemäß ein:

if(isset($_POST['sendmailsubmit'])) {

    if(mail(.... , .... , ....))
          echo 'email erfolgreich verschickt';

}
elseif(isset($_POST['sendmailcancel'])) {

    echo 'Emailversand abgebrochen';

}
```



Gruß
Frank


----------



## son gohan (17. Mai 2005)

Hallo,


jetzt hast du mir ja netter Weise schon einen submit Button gegeben, aber ich habe das ganze falsch eingebaut und bekomme eine Fehlermeldung:


```
<?php
/* Empf&auml;nger */
$to  = "mary@example.com" . ", " ; // beachten Sie das Komma
$to .= "mary@example.com";
/* Betreff */
$subject = "Geburtstags-Erinnerung f&uuml;r August";
/* Nachricht */
$message = '
<html>
<head>
 <title>Geburtstags-Erinnerung f&uuml;r August</title>
</head>
<body>
<p>lllll  </p>
<p>kkkkkkkkkk	 </p>
<p>kkkkkkkk			</p>
</body>
</html>
';
/* Um eine HTML-Mail zu senden, k&ouml;nnen Sie den den "Content-type"-Header.
   setzen */
$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
/* zus&auml;tzliche Header */
$headers .= "To: Mary <mary@example.com>, Kelly <kelly@example.com>\r\n";
$headers .= "From: Geburtstags-Erinnerung <geburtstag@example.com>\r\n";
$headers .= "Cc: geburtstagsarchiv@example.com\r\n";
$headers .= "Bcc: geburtstagscheck@example.com\r\n";
/* Verschicken der Mail */
mail($to, $subject, $message, $headers);
echo 'Email mit den angegebenen Daten verschicken?<br>'."\n"
	   .'<form action="index.php" method="POST">'."\n"
	   .'<input type="submit" name="sendmailsubmit" value="abschicken">'."\n"
	   .'<input type="submit" name="sendmailcancel" value="abbrechen">'."\n"
	   .'</form>'."\n";

// und später sinngemäß ein:
if(isset($_POST['sendmailsubmit'])) {
	if(mail(.... , .... , ....))
		  echo 'email erfolgreich verschickt';
}
elseif(isset($_POST['sendmailcancel'])) {
	echo 'Emailversand abgebrochen';
}
?>
```
Kannst du mir bitte nochmal helfen. Ich weis nicht aber der Mime Typ ist doch auch falsch angegeben in dem PHP Code? 





> $headers .= "Content-type: text/html; charset=iso-8859-1\r\n";


----------

