HTML in E-Mail einbinden
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
akzeptieren
beispiel
beruf
betreff
code
dank
email
header
hilfe
http
mime
senden
start
telefon
test
text
type
url
windows
zeile
-
Hallo LC,
Ich möchte in einer E-Mail html einbauen. Da ich nicht gleich ein Forum schreiben wollte hab ich gegoogelt und auch vieles gefunden aber keins hat funktioniert hier ein z.b:
<? $mail_empfaenger="dgdfcxd@kfjdf.de"; $mail_absender=$mailaddi; $betreff="Eine Testmail"; $text=" <html><head><title>Test></title></head> <body> <table border=5> <tr><td bcgolor=blue>Name</td><td bgcolor=red>$Vorname $Nachname</td></tr> <tr><td bgcolor=yellow> Beruf</td><td bgcolor=green>$Beruf</td></tr> <tr><td>Telefon</td><td>$Telefon</td></tr> <tr><td colspan=2>Mit freundlichen Grüssen</td></tr> </table> </body> </html>"; mail($mail_empfaenger, $betreff, $text,"from:$mail_absender\r\ nContent-Type:text/html\r\nContent-Transfer-Encoding: 8bit\r\n"); print "email wurde verschickt"; ?>
Die E-Mail kommt an aber der Html inhalt wird nicht ausgeführt was is der Fehler?!
Beitrag zuletzt geändert: 21.10.2009 19:04:05 von chatvz -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Sende einfach deine E-Mail mit PHPMailer, da kannst du das ganz einfach einstellen.
LG cookies -
Die meisten Mailclients unterstützen MIME-Headers und Multipart-Messages. Deine Email muss dann natürlich diesen Standards entsprechen.
Die Spezifikation hierfür ist die RFC 2046. Zum Beispiel hier: http://www.faqs.org/rfcs/rfc2046.html
Ein Tipp: Die RFC helfen bei 90% der Fragen, die das WWW und Web angehen, sei es http, pop3, smtp, mime, ftp, you name it. -
Das vierte Beispiel hier sollte dein Problem lösen:
http://www.php.net/manual/en/function.mail.php
// ... // To send HTML mail, the Content-type header must be set $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; // ...
Grüße,
Prog -
soooo (zu) viele Beispiele sind mit \r\n was einfach falsch ist
... einfach \n ... (ausser es läuft auf Windows-Server, aber selbst da geht es ohne \r auch )
;)
\n = Zeilenumbruch
\r = Zeilenvorschub (nur unter Windows relevant)
-
Wenn man in anderen Themen fremde Beiträge als Spam meldet, weil sie auf ihrer falschen Meinung bestehen, sollte man es zumindest selbst nicht tun. Nach der verlinkten RFC 2046 hat eine Zeile des Headers mit einem CRLF-Linebreak zu enden und diese ist nun Mal \r\n. Also nichts falsch.
-
freecontent schrieb:
soooo (zu) viele Beispiele sind mit \r\n was einfach falsch ist
... einfach \n ... (ausser es läuft auf Windows-Server, aber selbst da geht es ohne \r auch )
;)
\n = Zeilenumbruch
\r = Zeilenvorschub (nur unter Windows relevant)
Das ist falsch. Nicht nur das, was Nikic schon richtigerweiße angemerkt hat, sondern auch deine persönlich Definition der ASCII 0xa und 0xd.
\r ist eben kein Zeilenvorschub, sondern ein Wagenrücklauf (carriage return)
\n ist eben kein Zeilenumbruch, sondern ein Zeilenvorschub (line feed).
Das ganze ist noch aus der Fernschreiberzeit, als \r den Wagen nach links zurücklaufen ließ (wir erinnern uns an Schreibmaschinen) und das darauffolgende \n die Trommel um eine Zeile weiterdrehte.
Die weiteren Steuerzeichen sind
0x0 - Null oder Padding (nul)
0x1 - start of heading (soh)
0x2 - start of text (stx)
0x3 - end of text (etx)
0x4 - end of transmission (eot)
0x5 - enquiry (enq)
0x6 - acknowledge (ack)
0x7 - bell (bel)
0x8 - backspace (bs)
0x9 - horizontal tab (ht)
0xa - line feed (lf)
0xb - vertical tab (vt)
0xc - form feed (ff)
0xd - carriage return (cr)
0xe - shift out (so)
0xf - shift in (si)
0x10 - data link escape (dle)
0x11 bis 0x14 - device control x
etc. -
ok, sorry, da hab ich was Falsches geschrieben
... so hab ich es halt mal "gelernt" ... da hab ich wohl was falsches "gelernt"
also war mein "Lehrer" wohl nicht richtig informiert
(aber damit bin ich beim Coden bisher immer ganz gut zurechtgekommen, hat alles geklappt ?!?!)
Danke für die Richtigstellung und die Info
... werd mich damit nochmal ausführlicher beschäftigen
-
Danke für die hilfe:
Warum kann ich keine iframe einbauen?
<iframe src=".............."
width="90%" height="400" name="...............">
</iframe>
Nochmal hilfe XD
Beitrag zuletzt geändert: 22.10.2009 18:41:14 von chatvz -
Es kann sein, dass gute Email-Clients wie Thunderbird so einen Mist aus Sicherheitsgründen nicht akzeptieren. Korrigigiert mich, wenn ich falsch lieg'.
Beitrag zuletzt geändert: 22.10.2009 22:46:55 von nikic -
nikic schrieb:
Es kann sein, dass gute Email-Clients wie Thunderbird so einen Mist aus Sicherheitsgründen nicht akzeptieren. Korrigigiert mich, wenn ich falsch lieg'.
Das war eigentlich auch mein 1. Gedanke ... wiso will mal in einer Mail eine Mailfunktion haben ? O.o -
Probier mal explizit einen DOCTYPE mit anzugeben,
Infos dazu gibts auf http://de.selfhtml.org/html/allgemein/grundgeruest.htm#dokumenttyp, die richtige Variante wäre wahrscheinlich Transitional
wenn kein DOCTYPE angegeben ist geht dein email-Programm wahrscheinlich von Strict aus, dort sind aber frame und iframe nicht erlaubt
Edit: ich weiß allerdings nicht ob es vllt. für html in emails irgendwelche extra DOCTYPEs gibt
Beitrag zuletzt geändert: 22.10.2009 23:00:07 von fseplnixx -
OK dann halt kein iframe
Hier Mal genau was ich Senden Möchte kann man css senden?:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=windows-1250"> <title></title> </head> <body> <style type="text/css"> #rahmen { width:1024px; left: 50%; margin-left: -512px; position: absolute; background: url("000001.png") top left repeat-x; } </style> <div id="rahmen"><br> <h1>Test E-Mail</h1> ?>
Beitrag zuletzt geändert: 23.10.2009 20:59:54 von chatvz -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage