E-Mail Zustellung erfolgt nicht wenn Absender und Empfänger Yahoo Adressen haben

Fragen zum Erstellen von Templates für webEdition.
FriedrichA
Member
Beiträge: 45
Registriert: Do 11. Sep 2014, 15:55

E-Mail Zustellung erfolgt nicht wenn Absender und Empfänger Yahoo Adressen haben

Beitragvon FriedrichA » Di 8. Mai 2018, 12:10

Hallo,
in den letzten Wochen häufen sich die Informationen, dass E-Mails an den Empfänger nicht zugestellt werden, wenn Absender und Empfänger beim selben Anbieter, Bsp. Yahoo, eine E-Mail Adresse haben. Von unserem Provider wurde mitgeteilt, dass wir reply-to nutzen sollen. Allerdings weiß ich nicht, wie ich anhand des nachstehenden Aufbaus dieses einbinden müsste. In den we:Tags fand ich dazu auch nichts. Hat von euch jemand dieses Problem schon gehabt und eine Lösung gefunden? Vielen Dank schon vorab.

Den Empfänger verwalten wir über Objekte. Hier tragen wir auch dessen E-Mail ein.
Der Absender füllt das Formular aus und trägt dabei seine E-Mail Adresse ein.

### ANFANG ###
<we:comment>Pflichtfelder festlegen, zusaetzlich sind immer Pflicht: Anrede,Vorname,Name,E-Mail</we:comment>
<we:setVar to="global" nameto="mail_required" value="Datum_Bootsvermietung,Abfahrtzeit" />
<we:comment>die folgenden Felder werden aus dem Objekt mit in der E-Mail zur Verfuegung gestellt</we:comment>
<we:setVar to="global" nameto="mail_object_fields" value="Titel,Ansprechpartner,Strasse,PLZ,Ort,Ortszusatz,Telefon,Telefax,Mobil,Email" />

<we:comment>Rubrik für dieses Formular festlegen</we:comment>
<we:setVar to="global" nameto="mail_rubrik" value="#11# Paddelbootvermietung" />

<we:comment>Daten fuer E-Mail an den Anbieter</we:comment>
<we:setVar to="global" nameto="mail_content_id" value="361" />
<we:setVar to="global" nameto="mail_subject" value="Anfrage zur Bootsvermietung über spreewald-info.de" />
<we:setVar to="global" nameto="mail_recipient" from="top" namefrom="Email" />
<we:setVar to="global" nameto="mail_recipient_field" value="" />
<we:setVar to="global" nameto="mail_from" value="" />
<we:setVar to="global" nameto="mail_from_field" value="EMail" />
<we:setVar to="global" nameto="mail_ignore" value="" />

<we:comment>Daten fuer E-Mail an den Gast</we:comment>
<we:setVar to="global" nameto="mail_guest_content_id" value="363" />
<we:setVar to="global" nameto="mail_guest_subject" value="Kopie Anfrage zur Bootsvermietung über spreewald-info.de" />
<we:setVar to="global" nameto="mail_guest_recipient" value="" />
<we:setVar to="global" nameto="mail_guest_recipient_field" value="EMail" />
<we:setVar to="global" nameto="mail_guest_bcc" value="" />
<we:setVar to="global" nameto="mail_guest_from" value="info@spreewald-info.de" />
<we:setVar to="global" nameto="mail_guest_from_field" value="" />
<we:setVar to="global" nameto="mail_guest_ignore" value="" />

<we:include id="159" type="template" comment="Formular verarbeiten" />
<we:include id="231" type="template" comment="Meldung Formular abgeschickt" />
<we:include id="229" type="template" comment="Meldung Formular erfolgreich versandt" />
<we:include id="230" type="template" comment="Meldung Formular nicht versandt" />
### ENDE ###

WBTMagnum
webEdition Partner
webEdition Partner
Beiträge: 1825
Registriert: Di 7. Mär 2006, 16:50
Wohnort: Wien
Kontaktdaten:

Re: E-Mail Zustellung erfolgt nicht wenn Absender und Empfänger Yahoo Adressen haben

Beitragvon WBTMagnum » Di 8. Mai 2018, 13:08

Hallo Friedrich,

Die wesentliche Frage ist, wie der Versand der E-Mail dann erfolgt und welche Einstellungen ihr vorgenommen habt.

Liebe Grüße,
Sascha

FriedrichA
Member
Beiträge: 45
Registriert: Do 11. Sep 2014, 15:55

Re: E-Mail Zustellung erfolgt nicht wenn Absender und Empfänger Yahoo Adressen haben

Beitragvon FriedrichA » Mi 9. Mai 2018, 08:48

Hallo und Guten Morgen Sascha,

vielen Dank für die Rückmeldung. Wo finden wir das alles raus? Macht es Sinn einen Telefontermin zu vereinbaren, an dem wir einen Zugriff einrichten?

VG
André Friedrich

WBTMagnum
webEdition Partner
webEdition Partner
Beiträge: 1825
Registriert: Di 7. Mär 2006, 16:50
Wohnort: Wien
Kontaktdaten:

Re: E-Mail Zustellung erfolgt nicht wenn Absender und Empfänger Yahoo Adressen haben

Beitragvon WBTMagnum » Mi 9. Mai 2018, 09:50

Hallo Friedrich,

Schaut mal in der Template mit der ID "159" zum Verarbeiten des Formulars. Die E-Mailsettings findet ihr in den allgemeinen Einstellungen im Reiter "E-Mail".

HTH,
Sascha

FriedrichA
Member
Beiträge: 45
Registriert: Do 11. Sep 2014, 15:55

Re: E-Mail Zustellung erfolgt nicht wenn Absender und Empfänger Yahoo Adressen haben

Beitragvon FriedrichA » Mi 9. Mai 2018, 15:11

Hallo Sascha,

Template 159
### Anfang ###
<we:ifNotEditmode>
<we:include once="true" id="158" type="template" comment="tsTools" />
<?php
$aRequired = array_merge(array('Anrede', 'Vorname', 'Name', 'EMail'), ((!empty($mail_required)) ? explode(',', $mail_required) : array()));
$aIgnoreFields = ((!empty($mail_required)) ? explode(',', $mail_ignore) : array());
$aIgnoreFields[] = 'we_objectID';
$aIgnoreFields[] = 'we_oid';
$aIgnoreFields[] = 'we_cmd';
$aIgnoreFields[] = 'captchacode';
$aIgnoreFields[] = 'formSend';
$aIgnoreFields[] = 'sendForm';
$aIgnoreFields[] = 'Nachname';
$aIgnoreFields[] = '_pk_id_1_a0a1';
$aIgnoreFields[] = '_pk_ref_1_a0a1';
$aIgnoreFields[] = '_pk_ses_1_a0a1';
$aIgnoreFields[] = 'PHPSESSID';
$aIgnoreFields[] = 'gads';
$aIgnoreFields[] = '_gads';
$aIgnoreFields[] = 'PIWIKSESSID';
$aIgnoreFields[] = 'WESESSION';

$aMissingFields = array();
$sContent = '';
$sContentAdmin = '';
$GLOBALS['aEmailFields'] = array();
$GLOBALS['bFormSent'] = false;
$GLOBALS['bFormSuccess'] = false;
$GLOBALS['bFormMissingFields'] = false;

if (we_tag('ifVarSet', array('name' => 'Email_Betreff')) && we_tag('ifNotEmpty', array('match' => 'Email_Betreff'))) {
$mail_subject = we_tag('var', array('name' => 'Email_Betreff'));
$mail_guest_subject = 'Kopie '.we_tag('var', array('name' => 'Email_Betreff'));
$mail_admin_subject = we_tag('var', array('name' => 'Email_Betreff'));
}

if ((we_tag('ifVarSet', array('name' => 'sendForm', 'type' => 'request'))) && (isset($_REQUEST['Nachname'])) && (empty($_REQUEST['Nachname']))) {

$GLOBALS['bFormSent'] = true;
// check required Fields
foreach($aRequired as $sKey => $sFieldname) {
if (we_tag('ifVarEmpty', array('type' => 'request', 'match' => $sFieldname))) {
$aMissingFields[$sFieldname] = true;
$GLOBALS['bFormMissingFields'] = true;
}
}

if (count($aMissingFields) == 0) {
// detect longest label
$iLongest_form_label = (int) 0;
foreach ($_REQUEST as $sName => $sValue) {
if (!in_array($sName,$aIgnoreFields)) {
if (strlen($sName) > $iLongest_form_label) {
$iLongest_form_label = strlen($sName);
}
}
}

$aObjectFields = explode(",",$mail_object_fields);
if (count($aObjectFields) > 0) {
foreach($aObjectFields as $sField) {
if (strlen('Anbieter.'.$sField) > $iLongest_form_label) {
$iLongest_form_label = strlen('Anbieter.'.$sField);
}
}
}

if (strlen('E-Mail_Gastgeber') < $longest_form_label) {
$longest_form_label = strlen('E-Mail_Gastgeber');
}
if (strlen('Bundesland') < $longest_form_label) {
$longest_form_label = strlen('Bundesland');
}
if (strlen('Rubrik') < $longest_form_label) {
$longest_form_label = strlen('Rubrik');
}


// compose email form fields part
foreach ($_REQUEST as $sName => $sValue) {
if (!in_array($sName,$aIgnoreFields)) {
$GLOBALS['aEmailFields']['{'.$sName.'}'] = html_entity_decode(strip_tags((is_array($sValue) === TRUE ? implode(', ', $sValue) : $sValue)));
$sContent .= tsTools::prepareLabel($sName).':'.tsTools::getSpacer($iLongest_form_label, $sName).html_entity_decode(strip_tags((is_array($sValue) === TRUE ? implode(', ', $sValue) : $sValue)))."<br>";
$sContentAdmin .= $sName.'::'.tsTools::getSpacer($iLongest_form_label, $sName).html_entity_decode(strip_tags((is_array($sValue) === TRUE ? implode(', ', $sValue) : $sValue)))."\r\n";
}
}

// hier zusatzfelder admin Bundesland, E-Mail Gastgeber (aus Objekt bekommen! -> recipient), Rubrik
// Anbieter Felder ermitteln
$aObjectFields = explode(",",$mail_object_fields);
if (count($aObjectFields) > 0) {
foreach($aObjectFields as $sField) {
$GLOBALS['aEmailFields']['{Anbieter.'.$sField.'}'] = we_tag('var', array('name' => $sField));
}
}
$GLOBALS['aEmailFields']['Rubrik'] = (isset($GLOBALS['mail_rubrik']) ? $GLOBALS['mail_rubrik'] : '');
$GLOBALS['aEmailFields']['E-Mail_Gastgeber'] = (empty($mail_recipient) ? we_tag('var', array('name' => $mail_recipient_field, 'type' => 'request')) : $mail_recipient);
$GLOBALS['aEmailFields']['Bundesland'] = tsTools::federal_state_by_zip_and_city(html_entity_decode(strip_tags(trim($_POST['PLZ']))), html_entity_decode(strip_tags(trim($_POST['Wohnort']))));

// send E-Mails
// Anbieter
$mail_subject = tsTools::applyReplacements($mail_subject, $GLOBALS['aEmailFields']);
$GLOBALS['aEmailFields']['{Datenuebersicht}'] = $sContent;
if ((empty($mail_from)) && (!empty($mail_from_field))) {
$mail_from = we_tag('var', array('name' => $mail_from_field, 'type' => 'request'));
}
if ((empty($mail_recipient)) && (!empty($mail_recipient_field))) {
$mail_recipient = we_tag('var', array('name' => $mail_recipient_field, 'type' => 'request'));
}
//$mail_recipient = 'info@aod.de';
?><we:sendMail id="$mail_content_id" subject="$mail_subject" recipient="$mail_recipient" recipientBCC="$mail_bcc" from="$mail_from" mimetype="text/html" charset="utf-8" /><?php

// Guest
$mail_guest_subject = tsTools::applyReplacements($mail_guest_subject, $GLOBALS['aEmailFields']);
$GLOBALS['aEmailFields']['{Datenuebersicht}'] = $sContent;
if ((empty($mail_guest_from)) && (!empty($mail_guest_from_field))) {
$mail_guest_from = we_tag('var', array('name' => $mail_guest_from_field, 'type' => 'request'));
}
if ((empty($mail_guest_recipient)) && (!empty($mail_guest_recipient_field))) {
$mail_guest_recipient = we_tag('var', array('name' => $mail_guest_recipient_field, 'type' => 'request'));
}

?><we:sendMail id="$mail_guest_content_id" subject="$mail_guest_subject" recipient="$mail_guest_recipient" recipientBCC="$mail_guest_bcc" from="$mail_guest_from" mimetype="text/html" charset="utf-8" /><?php

// admin
$sContentAdmin = 'Rubrik::'.tsTools::getSpacer($iLongest_form_label, 'Rubrik').html_entity_decode(strip_tags($GLOBALS['aEmailFields']['Rubrik']))."\r\n".$sContentAdmin;
$sContentAdmin = 'E-Mail_Gastgeber::'.tsTools::getSpacer($iLongest_form_label, 'E-Mail_Gastgeber').html_entity_decode(strip_tags($GLOBALS['aEmailFields']['E-Mail_Gastgeber']))."\r\n".$sContentAdmin;
$sContentAdmin = 'Bundesland::'.tsTools::getSpacer($iLongest_form_label, 'Bundesland').html_entity_decode(strip_tags($GLOBALS['aEmailFields']['Bundesland']))."\r\n".$sContentAdmin;

$mail_admin_subject = tsTools::applyReplacements($mail_admin_subject, $GLOBALS['aEmailFields']);
$GLOBALS['aEmailFields']['{Datenuebersicht}'] = $sContentAdmin;
if ((empty($mail_admin_from)) && (!empty($mail_admin_from_field))) {
$mail_admin_from = we_tag('var', array('name' => $mail_admin_from_field, 'type' => 'request'));
}
if ((empty($mail_admin_recipient)) && (!empty($mail_admin_recipient_field))) {
$mail_admin_recipient = we_tag('var', array('name' => $mail_admin_recipient_field, 'type' => 'request'));
}
//$mail_admin_recipient = 'info@aod.de';
?><we:sendMail id="$mail_admin_content_id" subject="$mail_admin_subject" recipient="$mail_admin_recipient" recipientBCC="$mail_admin_bcc" from="$mail_admin_from" mimetype="text" charset="utf-8" /><?php

$GLOBALS['bFormSuccess'] = true;
}

}
?>
</we:ifNotEditmode>
### Ende ###

E-Mail Settings
Einstellungen > E-Mail
Mailer Typ: Benutzer php mail() Funktion

WBTMagnum
webEdition Partner
webEdition Partner
Beiträge: 1825
Registriert: Di 7. Mär 2006, 16:50
Wohnort: Wien
Kontaktdaten:

Re: E-Mail Zustellung erfolgt nicht wenn Absender und Empfänger Yahoo Adressen haben

Beitragvon WBTMagnum » Mi 9. Mai 2018, 16:09

Hallo Friedrich,

So wie das konfiguriert ist, werden hier Mails für andere User über die Mail-Funktion des Webservers versendet. Das ist unsauber und kann potentiell als Mailschleuder missbraucht werden. Dementsprechend werden hier vernünftige Mailserver eine Zustellung unterbinden.

Für einen sauberen Versand der E-Mail solltet ihr:
  1. Ein eigenes E-mail Account einrichten, z.B. noreply@meine.domain.
  2. Das Account könnt ihr dann in den webEdition Einstellungen hinterlegen, damit die für den Versand verwendet wird.
  3. Beim Versand mit dem Attribut "reply" den reply-to Header auf "mail_from" setzen.


So sollte das grundsätzlich funktionieren.

HTH,
Sascha

FriedrichA
Member
Beiträge: 45
Registriert: Do 11. Sep 2014, 15:55

Re: E-Mail Zustellung erfolgt nicht wenn Absender und Empfänger Yahoo Adressen haben

Beitragvon FriedrichA » Mi 9. Mai 2018, 16:32

Hallo Sascha,

besten Dank. Könnt ihr das für uns bitte im Livesystem anpassen? Natürlich gegen Aufwandsberechnung.

VG
André Friedrich

WBTMagnum
webEdition Partner
webEdition Partner
Beiträge: 1825
Registriert: Di 7. Mär 2006, 16:50
Wohnort: Wien
Kontaktdaten:

Re: E-Mail Zustellung erfolgt nicht wenn Absender und Empfänger Yahoo Adressen haben

Beitragvon WBTMagnum » Fr 11. Mai 2018, 16:15

JFTR: Wir konnten das nun wie beschrieben klären.

@André: Kannst du das Thema bitte noch als gelöst markieren. Danke.


Zurück zu „webEdition Templates erstellen (we:Tags)“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 13 Gäste