PHP Daten an Mail übergeben / komische Zeilenumbrüche

zögge

Mitglied
Hi miteinander

Ich denke für einen eingefleischten PHP und/oder HTML Kenner wird mein Problem ein Kinderspiel sein. Ich habe auch unzählige Lösungen gefunden und ausprobiert, allerdings nach ca. 20 verschiednenen Ausführungen den kompletten Überblick verloren, von daher wende ich mich jetzt an Euch und erhoffe mir, dass Ihr mir dies verständlich erklären kann.
Unter Verständlich verstehe ich, da ich eher vom Flash Bereich her komme und nicht Top bin im Bereich HTML und PHP, das auch ich es verstehe :-( . In diversen Lösungsvorschlägen zu meinem Problem wurde das ganze so hoch erklärt, dass ich lediglich Bahnhof verstand....:confused:

Jetzt zu meinem Problem. Ich sende aus meiner Flash Page diverse Daten an ein PHP File . Dieses fügt die benötigten Daten in ein Mail und schickt mir dieses zu, klappt auch alles einwandfrei.
Im Moment bin ich noch mit dem Design und der Darstellung des Mails beschäftigt und komme da auf einfach keinen grünen Zweig.

1. Frage) Das Mail sollte sauber geordnet und sehr übersichtlich sein, ob ich es nun per Webmail über das Internet ansehe oder es per Outlook herunterlade? Fakt ist, dass es mir das Mail zustellt aber zwischen jede Zeile einen Zeilenumbruch einfügt. Wieso? Zudem wird das Mail im Outlook schön dargestellt, das heisst alles bündig unter einander während es im Webmail die Zeilen (bzw. vereinzelte Vorschübe verstellt).
Im Moment sieht dieser Code so aus:
PHP:
<?php

$datum = date("d.m.Y - H:i");
$ip = $REMOTE_ADDR;

// Empfänger Email
$empfaenger = "meineMail@Adresse.ch";

// Empfänger - Betreff, Name 
mail($empfaenger,"Bewerbung von ".$geschlecht." ".$vorname." ".$name,"

$geschlecht $name schrieb am $datum:
------------------------------------------------------------------------------
Persönliche Angaben:
******************************************************************************
Anrede  : $geschlecht
Name    : $name
Vorname : $vorname
Strasse : $strasse
PLZ/Ort : $plz $ort
Land    : $land

Geburtsdatum : $tag.$monat.$jahr

Telefon : $telefon
Natel   : $natel
E-Mail  : $email

------------------------------------------------------------------------------
Allgemeine Angaben:
******************************************************************************

Beste Erreichbarkeit zwischen $zeitvon und $zeitbis Uhr.

$geschlecht $name moechte etwa $zeitinvestieren pro Woche investieren.
Vorgestelltes Einkommen pro Monat liegt bei $einkommen CHF.
$geschlecht $name kann ab $starten mit dem Geschaeft beginnen.

******************************************************************************
Motivation von $geschlecht $name:
$motivation
******************************************************************************

******************************************************************************
Sonstige Bemerkungen:
$bemerkungen
******************************************************************************
------------------------------------------------------------------------------
IP: $ip

","From: $name <$email>"); 
?>

2. Frage) Als Lösung dachte ich mir, ok sendest Du das Mail einfach per HTML, es geht ja nur an mich und ich habe HTML im Mail aktiviert. Doch ich scheitere schon beim HTML Code erstellen. Es schickt zwar das Formular noch aber zusätzlich erscheint im Mail zuoberst der HTML Code als Text ob nun im Outlook oder Webmail.
Der nicht funktionierende Code dafür wäre folgender:
PHP:
<?php

$datum = date("d.m.Y - H:i");
$ip = $REMOTE_ADDR;
$header = 'content-Type: text/html\nContent-Transfer-Encoding: 8bit';
$header = trim($header);
$body = 'content-Type: text/html\nContent-Transfer-Encoding: 8bit';
$body = trim($body);

// Empfänger Email
$empfaenger = "meineMail@Adresse.ch";

// Empfänger - Betreff, Name 
mail($empfaenger,"Bewerbung von ".$geschlecht." ".$vorname." ".$name,"

$body '
<html>
<head></head>
<body>
------------------------------------------------------------------------------
$anrede $name schrieb am $datum:
******************************************************************************
Persönliche Angaben:

Anrede	: $geschlecht
Name		: $name
Vorname	: $vorname
Strasse : $strasse
PLZ/Ort	: $plz $ort
Land		: $land

Geburtsdatum: $tag.$monat.$jahr

Telefon	: $telefon
Natel		: $natel
E-Mail	: $email
******************************************************************************

Beste Erreichbarkeit zwischen $zeitvon und $zeitbis Uhr.

$geschlecht $name möchte etwa $zeitinvestieren pro Woche investieren.
Vorgestelltes Einkommen pro Monat liegt bei $einkommen CHF.
$geschlecht $name kann ab $starten mit dem Geschäft beginnen.

******************************************************************************
Motivation von $geschlecht $name:
$motivation
******************************************************************************

******************************************************************************
Sonstige Bemerkungen:
$bemerkungen
******************************************************************************
------------------------------------------------------------------------------
IP: $ip
</body>
</html>
","From: $name <$email>"); 
?>

Zugegeben, bei dieser Variante kann es wohl kaum funktionieren, ist ja auch made by zoegge :-( . (Hoffentlich haltet Ihr diese Fehler aus ;). )

3. Frage) Wie bringe ich es fertig, dass es mir auch via Webmail die ä ö und ü sauber darstellt und nicht so komische Symbole bringt? Outlook gibt mir aber die selben Zeichen korrekt aus :confused: .

Sorry, wenn ich hier 3 Fragen in einer Message schreibe, aber ich denke diese sind so zusammenhängend, dass es nichts bringt 3 Post's für dieses Thema zu eröffnen, da es ja auch schon genug davon hat.

Ja, ich habe gesucht und ich habe auch genug gefunden, nur bringt es nicht viel, wenn ich es nicht verstehe. Also bringt es mir auch nicht viel, wenn Ihr mir diese Links postet, da ich sie bestimmt zu 90% schon gelesen habe und trotzdem nicht dahinter gekommen bin.
 
Zuletzt bearbeitet:
Ich würde dir empfehlen, den Emailtext per Variable an die mail()-Funktion weiterzugeben.

Bei deiner ersten Variante, könntest du mit : \n ( Zeilenumbruch) und \t (Tabulator) deine Nachricht dementsprechend formatieren.
PHP:
$strMailMessage = "
------------------------------------------------------------------------------ \n
Persönliche Angaben:\n
**************************************************************\n
.
.
.
";

mail($empfaenger,"Bewerbung von ".$geschlecht." ".$vorname." ".$name,$strMailMessage,"From: $name <$email>");

In der 2. Variante genügt es nicht, einfach alles ohne weiteres in den body-Tag zu packen. Versuchs doch mal mit Tabellen.
 
Hallo Soyo

Vielen Dank für Deine schnelle Antwort. Ich habe mich vorerst dem Umbruch Problem gewidmet und Deinen Ratschlag befolgt. So wie es im Moment aussieht funktioniert da auch alles so wie es soll :) , vielen Dank.

Hast Du per Zufall gerade noch eine Lösung für mein ö ä ü Problem?

Die Variante HTML habe ich noch nicht versucht, aber sehe ich das richtig, dass es von der Zusammenstellung her funktioniert und ich einfach noch die Tabelle einfügen und anpassen muss?
 
Zuletzt bearbeitet:
Hi mewX

Vielen Dank für Deinen nützlichen Tipp. Ich werde es noch ausprobieren und in nächster Zeit Bescheid geben.

so ausführlich beschrieben habe ich das ganze nirgends im Netz entdeckt, habe für die Zukunft auch gleich einen Favoriten gesetzt.

Liebe Grüsse
zögge
 
Zurück