Antworten auf deine Fragen:
Neues Thema erstellen

Problem mit mail()-Funktion

mave

Nicht mehr ganz neu hier

Hallo Ihr! Ich habe folgende Funktion mit der ich per mail() Daten eines Formulars versende:

Code:
if (mail(email@domain.de, "Betreff", $inhalt, "FROM:kontakt@domain.de\r\nContent-Type:text/html\r\nContent-Transfer-Encoding: 8bit\r\n"))
    {
     echo 'Erfolgreich versendet!';
    }

Problem ist nun, dass anstatt der Text in der E-Mail direkt erscheint, immer eine HTML Datei angehängt wird, die erst geöffnet werden muss... Woran liegt das? Wie schaff ich es bitte, dass der Text (HTML) direkt in der E-Mail des Empfängers erscheint???

Vielen Dank schonmal!
 

M

MaedeG

Guest

AW: Problem mit mail()-Funktion

Sollte es immer noch nicht funktionieren füge ein "@" vor das "mail":

PHP:
if (@mail(email@domain.de, "Betreff", $inhalt, "FROM:kontakt@domain.de"))
    {
     echo 'Erfolgreich versendet!';
    }
mfg: Maede
 

netbandit

Aktives Mitglied

AW: Problem mit mail()-Funktion

Sollte es immer noch nicht funktionieren füge ein "@" vor das "mail":

PHP:
if (@mail(email@domain.de, "Betreff", $inhalt, "FROM:kontakt@domain.de"))
    {
     echo 'Erfolgreich versendet!';
    }
mfg: Maede
Und was hat das @ mit dem Problemchen zu tun? :rolleyes:

btw: To bzw. Empfänger sollte schon String sein/bleiben ;)
 

ChrisvA

Aktives Mitglied

AW: Problem mit mail()-Funktion

Du kannst mal versuchen, was passiert, falls du deinen Header erweiterst.
Folgende Version funktioniert bei mir ganz gut. Bei welchem Hoster bist du?
PHP:
      $headers = "From: ".$email["name"]." <".$email["from"].">\n"; 
      $headers .= "Reply-To: ".$email["name"]." <".$email["from"].">\n"; 
      $headers .= "X-Sender: ".$email["name"]." <".$email["from"].">\n"; 
      $headers .= "X-Mailer: PHP\n"; 
      $headers .= "Return-Path: ".$email["name"]." <".$email["from"].">\n"; 
      $headers .= "Content-Type: text/html; charset=iso-8859-1\n";
      $headers .= "MIME-Version: 1.0\n";
      $check = mail($email["address"], $email["subject"], $email["message"], $headers);
PS: Wenn dann mal das ganze läuft, kannst du ja einige Header wieder rausschmeißen.
 

r3nt5ch3r

~ Allround pG ~

AW: Problem mit mail()-Funktion

Problem ist nun, dass anstatt der Text in der E-Mail direkt erscheint, immer eine HTML Datei angehängt wird, die erst geöffnet werden muss... Woran liegt das? Wie schaff ich es bitte, dass der Text (HTML) direkt in der E-Mail des Empfängers erscheint???

Welchen Email Client benutzt du? Vielleicht ist es dort üblich dass dort HTML-Mails nur mit Anhang geöffnet werden können?!
 

ChrisvA

Aktives Mitglied

AW: Problem mit mail()-Funktion

Es soll doch soweit ich das verstanden habe auch um HTML-Mails gehen, oder?
Sonst braucht man auch bei text nicht die Mime Version hinschreiben.
 

ChrisvA

Aktives Mitglied

AW: Problem mit mail()-Funktion

Bei deinem Link fehlt aber leider die Mime Version und genau die brauchte ich einmal, damit der Versand funktionierte, deshalb habe ich mal den etwas ausführlichen Code gepostet.
 

mave

Nicht mehr ganz neu hier

AW: Problem mit mail()-Funktion

es geht um html email... aber ich möchte nicht, dass eine html seite als anhang mitgesendet wird, sondern die gleich direkt aufgerufen wird... email client verwende ich outlook 2003...

\r\nContent-Type:text/html\r\nContent-Transfer-Encoding: 8bit\r\n... wenn ich diesen teil jetzt rausnehme, kommt zwar der inhalt direkt in der mail und nicht mehr im anhang, jedoch wird der gesamte code angezeigt... bringt also nicht wirklich was...

jemand andere idee?
 

mave

Nicht mehr ganz neu hier

AW: Problem mit mail()-Funktion

Du kannst mal versuchen, was passiert, falls du deinen Header erweiterst.
Folgende Version funktioniert bei mir ganz gut. Bei welchem Hoster bist du?
PHP:
      $headers = "From: ".$email["name"]." <".$email["from"].">\n"; 
      $headers .= "Reply-To: ".$email["name"]." <".$email["from"].">\n"; 
      $headers .= "X-Sender: ".$email["name"]." <".$email["from"].">\n"; 
      $headers .= "X-Mailer: PHP\n"; 
      $headers .= "Return-Path: ".$email["name"]." <".$email["from"].">\n"; 
      $headers .= "Content-Type: text/html; charset=iso-8859-1\n";
      $headers .= "MIME-Version: 1.0\n";
      $check = mail($email["address"], $email["subject"], $email["message"], $headers);
PS: Wenn dann mal das ganze läuft, kannst du ja einige Header wieder rausschmeißen.

DANKE! Wieder was dazugelernt! :D
 

CIX88

Aktives Mitglied

AW: Problem mit mail()-Funktion

Warum werden eigentlich nicht die Vorteile vom PHPMailer benutzt?
Jedenfalls kann man dann sicher sein, dass auch der Mail-Header korrekt ist, was widerum die Anzeige im Mial-Programm stark beeinflußt.
 

mave

Nicht mehr ganz neu hier

AW: Problem mit mail()-Funktion

mag jetzt doof klingen, aber bevor ich vorgefertigte dinge benutze will ich selbst erstmal wissen sammeln :D
 

kakktus

Noch nicht viel geschrieben

AW: Problem mit mail()-Funktion

mag jetzt doof klingen, aber bevor ich vorgefertigte dinge benutze will ich selbst erstmal wissen sammeln :D

gute einstellung :)
trotzdem würde ich dir eine mailklasse empfehlen. wie CIX88 schon geschrieben hat, hast du da wenigstens einen sauberen header und noch viele andere vorteile.

gruß
kakktus
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.565
Beiträge
1.538.067
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben