Das Contao Camp 2020 in Hamburg. LEIDER ABGESAGT!
Ergebnis 1 bis 8 von 8

Thema: Mailversand ohne SMTP

  1. #1
    Contao-Nutzer
    Registriert seit
    15.03.2010.
    Ort
    AT
    Beiträge
    161

    Standard Mailversand ohne SMTP

    Hi all,

    Wie versende ich Mails in Contao > 4.8 Mail ohne SMTP?

    Wie sieht die Konfiguration im parameters.yml dazu aus oder bleibt die leer?

    Ergänzung:
    In einer Text-Funktion:
    PHP-Code:

    ### FUNKTIONIERT ###

    $to "from@abc.com";
    $subject "My subject";
    $txt "Hello world!";
    $headers "From: no-reply@test.com";
    mail($to,$subject,$txt,$headers);

    ### FUNKTIONIERT NICHT ! ###

    $objEmail = new Email();
    $objEmail->from "dev@test.com";
    $objEmail->sendTo"empfaenger@irgendwas.at" ); 

    THX!
    Geändert von heyho (25.03.2020 um 14:58 Uhr)

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Vienna, Austria
    Beiträge
    23.052
    Partner-ID
    10107
    User beschenken
    Wunschliste

    Standard

    Contao unterstützt den Versand mit der "mail()" Funktion von PHP nicht. Es kann nur "sendmail" oder "smtp" verwendet werden.

  3. #3
    Contao-Nutzer
    Registriert seit
    15.03.2010.
    Ort
    AT
    Beiträge
    161

    Standard

    Wenn man den Mailversand irgendwie nicht zum Laufen bringt, kann man sich mit dem Hook behelfen.
    Klar ist, das die Mails vermutlich im Spam verschwinden.. aber als Übergangslösung ganz nützlich...

    config.php
    PHP-Code:
    $GLOBALS['TL_HOOKS']['processFormData'][]   = array('Class''sendMailsFormFormulargeneratorViaPHP'); 
    Class.php
    PHP-Code:
    public function sendMailsFormFormulargeneratorViaPHP(&$arrSubmitted$formData$files$labels)
    {
        
    $message "<b>Information zum Formular auf der Website</b><br><br>";
        
    $message .= "Formular: ".$formData['title']."<br><br>";

        if(
    $arrSubmitted)
        foreach (
    $arrSubmitted as $fieldName => $fieldValue) {
            
    $message .= "<b>".$fieldName."</b>: " $fieldValue "<br>" ;
        }

        
    $message .= "<br><i></i><br>";

        
    $to      $formData['recipient'];
        
    $subject $formData['subject'];
        
    $message $message;
        
    $header  "MIME-Version: 1.0\r\n";
        
    $header .= "Content-type: text/html; charset=utf-8\r\n";
        
    $header .= 'From: no-reply@domain.com';

        
    mail($to$subject$message$header); 

        
    # Zum einzelnen Versenden an die im Backend eingetragenen Empfänger
        #$recipientArray = explode(",",$formData['recipient']);
        #var_dump($formData);
        #var_dump($formData['recipient']);
        #if(!empty($recipientArray)) {
        #    foreach($recipientArray AS $recipient) {
        #        mail( trim($recipient), $subject, $message, $header); 
        #    }
        #}


  4. #4
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Vienna, Austria
    Beiträge
    23.052
    Partner-ID
    10107
    User beschenken
    Wunschliste

    Standard

    Warum benutzt du nicht einfach sendmail oder direkt einen SMTP Server?

  5. #5
    Contao-Nutzer
    Registriert seit
    15.03.2010.
    Ort
    AT
    Beiträge
    161

    Standard

    SMTP bringt der Kunde nicht zustande und bei sendmail heißts email rejected... und ich hab keine Lust mehr mich mit dem Thema zu beschäftigen für Mails die nur an intern gehen..

  6. #6
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Vienna, Austria
    Beiträge
    23.052
    Partner-ID
    10107
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von heyho Beitrag anzeigen
    und bei sendmail heißts email rejected...
    sendmail muss natürlich vom Server erlaubt und entsprechend konfiguriert sein.

  7. #7
    Contao-Nutzer
    Registriert seit
    15.03.2010.
    Ort
    AT
    Beiträge
    161

    Standard

    In der phpinfo() ist der Pfad zum sendmail enthalten. In der Serverkonfiguration gibt es keine Konfigurationsmöglichkeit.
    Ich hab die selbe Domain wie die Website verwendet, SPF und DKIM eingerichtet.
    In der parameters.yml hab ich alle möglichen Varianten durchprobiert - immer mit Cache löschen.

    Ich mag einfach nicht mehr ;-) Danke dir aber!!

  8. #8
    Contao-Nutzer
    Registriert seit
    27.05.2014.
    Beiträge
    81

    Standard

    Zitat Zitat von heyho Beitrag anzeigen
    SMTP bringt der Kunde nicht zustande und bei sendmail heißts email rejected... und ich hab keine Lust mehr mich mit dem Thema zu beschäftigen für Mails die nur an intern gehen..
    Für solche Helden haben wir intern ein paar Möglichkeiten:

    1) Wir legen KUNDE@UNSERE_EIGENE_DOMAIN.de an und nutzen einfach die SMTP Daten hiervon oder
    2) Falls wir Zugang zur E-Mail Verwaltung des Kunden haben, ihm einfach selbst eine E-Mail Adresse erstellen und die SMTP-Daten hinterlegen oder
    3) Wir benutzen unsere SERVER@UNSERE_EIGENE_DOMAIN.de, die bei mehreren Kunden als SMTP eingerichtet ist und es ihn nicht besonders interessiert, wer genau der Absender ist, solange es funktioniert.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •