mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Fr 26.04.2024 20:46 Benutzername: Passwort: Auto-Login

Thema: Probleme mit autom Multipart E-Mail über Kontaktformular vom 16.11.2010


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> Probleme mit autom Multipart E-Mail über Kontaktformular
Autor Nachricht
holger_buns
Threadersteller

Dabei seit: 06.11.2006
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Di 16.11.2010 10:37
Titel

Probleme mit autom Multipart E-Mail über Kontaktformular

Antworten mit Zitat Zum Seitenanfang

Hallo,
ich möchte dem Nutzer nachdem er über ein Kontaktformular seine Daten hinterlassen hat unter anderem auch seine Mail Adresse, automatisch eine Mail zukommen lassen in der er weitere Infos bekommt.

Dazu hab ich eine Datei erstellt mit multipart Funktion, so dass der E-mail client entweder Text anzeigt oder HTML je nach Einstellung. Leider bekomme ich es aber nicht hin, dass die Mail in allen E-Mail Programm (web.de, gmx, googlemail) angezeigt wird. Es liegt mit Sicherheit an meinem Doctype im HTML Teil der .php Datei. Leider weiss ich aber nicht, welchen Doctype ich nehmen soll, damit es funktioniert. Bei googlemail geht es mit dem jetztigen Doctype den ich eingestellt habe, aber bei allen anderen Funtioniert es damit nicht.

Wer kann mir helfen?

Unter folgendem Link könnt ihr euch die PHP Datei mal anschauen:

http://www.artbase-software.de/...output_multipart.zip

Gruss
Holli
  View user's profile Private Nachricht senden
DerM

Dabei seit: 18.01.2009
Ort: -
Alter: 42
Geschlecht: Männlich
Verfasst Di 16.11.2010 12:43
Titel

Antworten mit Zitat Zum Seitenanfang

Poste doch einfach den Code hier!!!
  View user's profile Private Nachricht senden
Anzeige
Anzeige
holger_buns
Threadersteller

Dabei seit: 06.11.2006
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Di 16.11.2010 12:45
Titel

Antworten mit Zitat Zum Seitenanfang

Hallo,
hier der Code aus der PHP Datei.

Gruss
Holli


Code:
<?
if (eregi("output.php",$_SERVER['PHP_SELF']))
{  Header("Location: ../index.html");
   die();
}

############################################################################

# Antwortseite + Mailfunktion

############################################################################

$ab_mail   = "holger.burgard@artbase-software.de";
$ip      = getenv("REMOTE_ADDR");
$host      = gethostbyaddr(getenv("REMOTE_ADDR"));

$Name      = htmlspecialchars($_POST['Name']);
$Email      = htmlspecialchars($_POST['Email']);
$Nachricht   = htmlentities($_POST['Nachricht']);
$neuertext   = wordwrap($Nachricht, 40, "\n",true);
$iText      = nl2br($neuertext);
$iText      = stripslashes($iText);
$Date      = date("d.m.Y, H:i");
$mText      = wordwrap($Nachricht, 70,"\r\n",true);
$mText      = stripslashes($mText);
$antwortseite   = "$antwort_start"."\n";
$antwortseite  .= "<table border=\"0\" style=\"margin: 0px; padding: 0px\">"."\n";
$antwortseite  .= "<tr><td>$antwort</td></tr>"."\n";
$antwortseite  .= "<tr><td><br /><br />$antwort2</td></tr>"."\n";
$antwortseite  .= "</table>"."\n"."<br />"."\n";
$antwortseite  .= "<table border=\"0\" style=\"margin: 0px; padding: 0px\">"."\n";

// Mail generieren

if (!$Email) $Absenderemail = "Webmailer <$recipient>";
else $Absenderemail = "$Name <$Email>";

$headers  = "From: $Absenderemail\n";
$headers .= "Reply-To: $Absenderemail\n";
$headers .= "Bounce-To: $Absenderemail\n";
$headers .= "Errors-To: $Absenderemail\n";
$headers .= "X-Mailer: PHP/".phpversion()."\n";
$headers .= "X-Priority: 3\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Type: text/plain; charset=ISO-8859-1\n";
if ($Email!="")
{ $return   = "-f$Email"; }
else { $return   = "-f$recipient"; }


// Mail an artBase

foreach($_POST as $Formularfeld => $Wert)
{
if(($Formularfeld != "Submit") && ($Formularfeld != "Nachricht") && ($Formularfeld != "site") && ($Formularfeld != "lang") && ($Formularfeld != "Code") && ($Formularfeld != "PHPSESSID"))
{
   if ($Wert)
   {
   $message   .= ereg_replace("_"," ",$Formularfeld).": ".htmlspecialchars($Wert)."\n";
   $antwortseite   .= "<tr><td>".ereg_replace("_"," ",$Formularfeld).":</td><td>&nbsp;&nbsp;&nbsp;</td><td>".htmlspecialchars($Wert)."</td></tr>\n";
   }
}
}
$message .= "\n";
if ($mText)
{
$message .= "Mitteilung:"."\n";
$message .= "------------------\n";
$message .= "$mText"."\n";
}
$message .= "\n\n";
$message .= "__________________________________________________\n";
$message .= "Abgesendet am $Date Uhr"."\n";
$message .= "Absender-IP: $ip"."\n";
$message .= "Absender-Host: $host"."\n";
mail("$recipient", "$subject", $message, $headers, $return);
if ($recipient2!="") {mail("$recipient2", "$subject", $message, $headers, $return); }


// eventuell Download-Link versenden

//$boundary1   = rand(0,9)."-"
//      .rand(10000000000,9999999999)."-"
//      .rand(10000000000,9999999999)."=:"
//      .rand(10000,99999);

$boundary1 = md5(uniqid(time()));

if ($Email!="" and $downloadLink=="ja")
{
$headers_link  = "From: artBase! Software GmbH <$ab_mail>\n";
$headers_link .= "Bounce-To: $ab_mail\n";
$headers_link .= "Errors-To: $ab_mail\n";
$headers_link .= "X-Mailer: PHP/".phpversion()."\n";
$headers_link .= "X-Priority: 3\n";
$headers_link .= "MIME-Version: 1.0\n";
$headers_link .= "Content-Type: multipart/alternative; boundary=\"$boundary1\"\n";
$return_link   = "-f$ab_mail";


// Text/Plain
$message_link  = "--$boundary1\n";
$message_link .= "Content-Transfer-Encoding: quoted-printable\n";
$message_link .= "Content-Type: text/plain; charset=ISO-8859-1\n";
$message_link .= "aB-Agenta fx - Die innovative Verwaltungssoftware für Versicherungsvermittler\n";
$message_link .= "\n\n";
$message_link .= "Kostenloser Demo-Download\n\n";
$message_link .= "Sehr geehrte Damen und Herren,\n\n";
$message_link .= "vielen Dank für Ihr Interesse an unserer Verwaltungssoftware aB-Agenta. Nachfolgend erhalten Sie den gewünschten Link zum Download der Demo-Version von aB-Agenta. Bei dieser Version handelt es sich um eine Vollversion mit Datensatz-Beschränkung (max. 40 Datensätze) und zum Teil deaktivierten Funktionen. Die Demo ist nicht Laufzeit beschränkt. Noch nicht lizenzierte Anwender (Interessenten) erhalten nach dem Kauf die entsprechende Lizenzdatei und können diese Version durch eine Lizenzierung zu einer unbeschränkten Version freischalten.\n";
$message_link .= "Alle eingetragenen Daten werden nach der Lizenzierung übernommen!\n";
$message_link .= "\n";
$message_link .= "Bitte klicken Sie auf den nachfolgenden Link und laden Sie sich die Datei aB-Agenta.zip, welche die Demo-Version beeinhaltet herunter. Anschließend entpacken Sie bitte die Datei und starten dann die Hauptinstallation mit einem Doppelklick auf die Datei aBStartSetup.exe! Folgen Sie nun den weiteren Anweisungen. Gegebenenfalls lesen Sie die Hinweise in der Installationsanleitung.\n\n\n";
$message_link .= "http://www.artbase-software.de/download/aB-Agenta.zip"."\n\n";
$message_link .= "Installationsanleitung im PDF Format: http://www.artbase-software.de/Setup-Dateien14/aBSetupManual.pdf\n\n";
$message_link .= "Hinweis:\n";
$message_link .= "Ab Windows 7 ist die Datei Framework 3.5 Bestandteil des Betriebssystems und muss nicht mehr installiert werden. Bei Windows XP und Vista können Sie in der Systemsteuerung unter Software nachschauen, ob das Framework 3.5 SP1 bereits installiert ist. Falls dieses nicht der Fall sein sollte, dann installieren Sie dieses bitte anhand des nachfolgenden Links.\n";
$message_link .= "Framework 3.5: http://www.www.artbase-software.de/download/dotnetfx35setup.exe\n\n\n";
$message_link .= "Sollten Sie noch Fragen haben, stehe ich Ihnen gerne zur Verfügung.\n\n";
$message_link .= "Freundliche Grüße aus der Eifel"."\n\n"."Holger Burgard"."\n"."Vertrieb"."\n"."Telefon: +49 (0) 26 76 / 952 74-20\n";
$message_link .= "-----------------------------------------------------------------------------\n";
$message_link .= "artBase! Software GmbH"."\n"."Im Oberflur 32"."\n"."56766 Auderath"."\n"."Telefon: +49 (0) 26 76 . 952 74-0"."\n"."Telefax: +49 (0) 26 76 . 952 74-90"."\n"."E-Mail: info@artbase-software.de | http://www.artbase-software.de"."\n"."Geschäftsführer: Dipl.-Informatiker Bernhard Thomas"."\n"."Amtsgericht Koblenz HRB 4682\n";
$message_link .= "-----------------------------------------------------------------------------\n\n";
$message_link .= "Support/Hotline:"."\n"."Tel.: +49 (0) 26 76 . 952 74-30"."\n"."Fax: +49 (0) 26 76 . 952 74-90"."\n"."E-Mail: support@artbase-software.de\n";


// Text/HTML

$message_link .= "--$boundary1\n";
$message_link .= "Content-Transfer-Encoding: quoted-printable\n";
$message_link .= "Content-Type: text/html; charset=ISO-8859-1\n";
$message_link .= "<html>\n";
$message_link .= "<body style=\"font-family:Verdana, Verdana, Geneva, sans-serif; font-size:11px; color:#000;\">\n";
$message_link .= "<span style=\"color:#df6e1f; font-weight:bold; line-height:25px; font-size:15px;\">aB-Agenta fx - Die innovative Verwaltungssoftware für Versicherungsvermittler</span><br /><br /><span style=\"color:#df6e1f; font-weight:bold; font-size:15px;\">Kostenloser Demo-Download</span><br /><br /><br />Sehr geehrte Damen und Herren,<br /><br />vielen Dank für Ihr Interesse an unserer Verwaltungssoftware aB-Agenta. Nachfolgend erhalten Sie den gewünschten Link zum Download der Demo-Version von aB-Agenta. Bei dieser Version handelt es sich um eine Vollversion mit Datensatz-Beschränkung (max. 40 Datensätze) und zum Teil deaktivierten Funktionen. Die Demo ist nicht Laufzeit beschränkt. Noch nicht lizenzierte Anwender (Interessenten) erhalten nach dem Kauf die entsprechende Lizenzdatei und können diese Version durch eine Lizenzierung zu einer unbeschränkten Version freischalten. <b>Alle eingetragenen Daten werden nach der Lizenzierung übernommen.</b><br /><br />\n";
$message_link .= "<strong>Bitte klicken Sie auf den nachfolgenden Link und laden Sie sich die Datei aB-Agenta.zip, welche die Demo-Version beeinhaltet herunter.</strong> Anschließend entpacken Sie bitte die Datei und starten dann die Hauptinstallation mit einem Doppelklick auf die Datei aBStartSetup.exe! Folgen Sie nun den weiteren Anweisungen. Gegebenenfalls lesen Sie die Hinweise in der Installationsanleitung.<br /><br /><br />\n";
$message_link .= "<a href=\"http://www.artbase-software.de/download/aB-Agenta.zip\"><img src=\"http://www.artbase-software.de/images/demo_download_button.jpg\" border=\"0\" style=\"margin-left:30px; display:block;\" alt=\"aB-Agenta Demo-Download\" /></a><br /><br />\n";
$message_link .= "<span style=\"color:#df6e1f; font-weight:bold;\">Installationsanleitung im PDF Format:</span> http://www.artbase-software.de/Setup-Dateien14/aBSetupManual.pdf<br><br><br>\n";
$message_link .= "<b>Hinweis:</b> Ab Windows 7 ist die Datei Framework 3.5 Bestandteil des Betriebssystems und muss nicht mehr installiert werden. Bei Windows XP und Vista können Sie in der Systemsteuerung unter Software nachschauen, ob das Framework 3.5 SP1 bereits installiert ist. Falls dieses nicht der Fall sein sollte, dann installieren Sie dieses bitte anhand des nachfolgenden Links<br><br>\n";
$message_link .= "<b>Framework 3.5:</b> http://www.artbase-software.de/download/dotnetfx35setup.exe<br /><br /><br />Sollten Sie noch Fragen haben, stehe ich Ihnen gerne zur Verfügung.<br /><br /><br /><br />Freundliche Grüße aus der Eifel<br /><br />Holger Burgard<br /><b>Vertrieb</b><br /><br /><b>Telefon: +49 (0) 26 76 . 952 74-20</b><br />-----------------------------------------------------------------------------<br /><br /><img src=\"http://www.artbase-software.de/images/mail_signatur/artbase_logo_klein.gif\" alt=\"Logo artBase! Software GmbH\" /><br /><br /><b>artBase! Software GmbH</b><br />Im Oberflur 32<br />56766 Auderath<br />Telefon: +49 (0) 26 76 . 952 74-0<br />Telefax: +49 (0) 26 76 . 952 74-90<br />E-Mail: info@artbase-software.de | http://www.artbase-software.de<br /><br />Geschäftsführer: Dipl.-Informatiker Bernhard Thomas<br/>Amtsgericht Koblenz HRB 4682<br />-----------------------------------------------------------------------------<br /><br />\n";
$message_link .= "<img src=\"http://www.artbase-software.de/images/mail_signatur/logo_agenta_2006_rgb_klein.gif\" alt=\"Logo artBase! Software GmbH\" /><br /><br /><b>Support/Hotline:</b><br />Tel.: +49 (0) 26 76 . 952 74-30<br />Fax: +49 (0) 26 76 . 952 74-90<br />E-Mail: support@artbase-software.de\n";
$message_link .= "</body>\n";
$message_link .= "</html>\n";


// Abschluss Message

$message_link .= "--$boundary1--\n";
mail("$Email", "aB-Agenta Demo-Download Link", $message_link, $headers_link, $return_link);
}


// Antwortseite

if ($iText) { $antwortseite .= "<tr><td valign=\"top\">Nachricht:</td><td>&nbsp;&nbsp;&nbsp;</td><td>$iText</td></tr>\n"; }
$antwortseite .= "</table>\n";
$antwortseite .= "$antwort_end\n";
echo "$antwortseite";
unset($Email);
unset($antwortseite);
unset($message);

?>


[Bitte 'CODE-Tags' verwenden]


Zuletzt bearbeitet von Kash am Di 16.11.2010 12:48, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
holger_buns
Threadersteller

Dabei seit: 06.11.2006
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Di 16.11.2010 14:53
Titel

Antworten mit Zitat Zum Seitenanfang

Hier der Code ohne unwichtigen Text:

Es geht eigentlich nur um die beiden Abschnitte TEXT/PLAIN und TEXT/HTML sowie der Abschnitt davor wo ich den Multipart eingefügt habe, wo der Fehler liegen könnte.


<?
if (eregi("output.php",$_SERVER['PHP_SELF']))
{ Header("Location: ../index.html");
die();
}

############################################################################

# Antwortseite + Mailfunktion

############################################################################

$ab_mail = "holger.burgard@artbase-software.de";
$ip = getenv("REMOTE_ADDR");
$host = gethostbyaddr(getenv("REMOTE_ADDR"));

$Name = htmlspecialchars($_POST['Name']);
$Email = htmlspecialchars($_POST['Email']);
$Nachricht = htmlentities($_POST['Nachricht']);
$neuertext = wordwrap($Nachricht, 40, "\n",true);
$iText = nl2br($neuertext);
$iText = stripslashes($iText);
$Date = date("d.m.Y, H:i");
$mText = wordwrap($Nachricht, 70,"\r\n",true);
$mText = stripslashes($mText);
$antwortseite = "$antwort_start"."\n";
$antwortseite .= "<table border=\"0\" style=\"margin: 0px; padding: 0px\">"."\n";
$antwortseite .= "<tr><td>$antwort</td></tr>"."\n";
$antwortseite .= "<tr><td><br /><br />$antwort2</td></tr>"."\n";
$antwortseite .= "</table>"."\n"."<br />"."\n";
$antwortseite .= "<table border=\"0\" style=\"margin: 0px; padding: 0px\">"."\n";

// Mail generieren

if (!$Email) $Absenderemail = "Webmailer <$recipient>";
else $Absenderemail = "$Name <$Email>";

$headers = "From: $Absenderemail\n";
$headers .= "Reply-To: $Absenderemail\n";
$headers .= "Bounce-To: $Absenderemail\n";
$headers .= "Errors-To: $Absenderemail\n";
$headers .= "X-Mailer: PHP/".phpversion()."\n";
$headers .= "X-Priority: 3\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Type: text/plain; charset=ISO-8859-1\n";
if ($Email!="")
{ $return = "-f$Email"; }
else { $return = "-f$recipient"; }


// Mail an artBase

foreach($_POST as $Formularfeld => $Wert)
{
if(($Formularfeld != "Submit") && ($Formularfeld != "Nachricht") && ($Formularfeld != "site") && ($Formularfeld != "lang") && ($Formularfeld != "Code") && ($Formularfeld != "PHPSESSID"))
{
if ($Wert)
{
$message .= ereg_replace("_"," ",$Formularfeld).": ".htmlspecialchars($Wert)."\n";
$antwortseite .= "<tr><td>".ereg_replace("_"," ",$Formularfeld).":</td><td>&nbsp;&nbsp;&nbsp;</td><td>".htmlspecialchars($Wert)."</td></tr>\n";
}
}
}
$message .= "\n";
if ($mText)
{
$message .= "Test"\n";
mail("$recipient", "$subject", $message, $headers, $return);
if ($recipient2!="") {mail("$recipient2", "$subject", $message, $headers, $return); }


// eventuell Download-Link versenden

//$boundary1 = rand(0,9)."-"
// .rand(10000000000,9999999999)."-"
// .rand(10000000000,9999999999)."=:"
// .rand(10000,99999);

$boundary1 = md5(uniqid(time()));

if ($Email!="" and $downloadLink=="ja")
{
$headers_link .= "Bounce-To: $ab_mail\n";
$headers_link .= "Errors-To: $ab_mail\n";
$headers_link .= "X-Mailer: PHP/".phpversion()."\n";
$headers_link .= "X-Priority: 3\n";
$headers_link .= "MIME-Version: 1.0\n";
$headers_link .= "Content-Type: multipart/alternative; boundary=\"$boundary1\" type=multipart/alternative\n";
$return_link = "-f$ab_mail";


// Text/Plain
$message_link = "This is a multi-part message in MIME format.\n\n"
$message_link .= "--$boundary1\n";
$message_link .= "Content-Transfer-Encoding: 8bit\n";
$message_link .= "Content-Type: text/plain; charset=ISO-8859-1\n";
$message_link .= "aB-Agenta fx - Die innovative Verwaltungssoftware für Versicherungsvermittler\n";
$message_link .= "\n\n";


// Text/HTML

$message_link .= "--$boundary1\n";
$message_link .= "Content-Transfer-Encoding: 8bit\n";
$message_link .= "Content-Type: text/html; charset=ISO-8859-1\n";
$message_link .= "<html>\n";
$message_link .= "<body style=\"font-family:Verdana, Verdana, Geneva, sans-serif; font-size:11px; color:#000;\">\n";
$message_link .= "Test\n";
$message_link .= "</body>\n";
$message_link .= "</html>\n";


// Abschluss Message

$message_link .= "--$boundary1--\n";
mail("$Email", "aB-Agenta Demo-Download Link", $message_link, $headers_link, $return_link);
}


// Antwortseite

if ($message_link) { $antwortseite .= "<tr><td valign=\"top\">Nachricht:</td><td>&nbsp;&nbsp;&nbsp;</td><td>\"$headers_link$message_link\"</td></tr>\n"; }
$antwortseite .= "</table>\n";
$antwortseite .= "$antwort_end\n";
echo "$antwortseite";
unset($Email);
unset($antwortseite);
unset($message);

?>
  View user's profile Private Nachricht senden
holger_buns
Threadersteller

Dabei seit: 06.11.2006
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Di 16.11.2010 16:40
Titel

Antworten mit Zitat Zum Seitenanfang

Hallo,
ich habs gelöst. Es liegt wohl an manchen doppelten Zeilenschaltungen im header. Die hab ich entfernt und in einer Definition hab ich gelesen, dass man im header die Zeile noch mit \r abschliessen muss. jetzt gehts, trotzdem Danke!!

Gruss
Holli
  View user's profile Private Nachricht senden
 
Ähnliche Themen E-Mail senden mit Flash-Kontaktformular
probleme mit kontaktformular
Probleme mit Kontaktformular
Kontaktformular Probleme
Probleme mit PHP-Kontaktformular auf meiner Homepage
Mal wieder Probleme mit meinem Kontaktformular nach Spansch
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.