1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

PHPMailer funktioniert nicht

Dieses Thema im Forum "PHP" wurde erstellt von Grunge, 10. November 2009.

  1. Grunge

    Grunge Grünschnabel

    Hey Leute,

    ich habe mir phpmailer runtergeladen und es installiert. Nun gebe ich zum testen ne Email ein und versuch ne Testnachricht zu schicken. Ging nicht. Kam immer ein Fehler. Bis ich SMTP aktiviert habe...Nun gehts doch es kommt folgendes....

    Zeile 8 sieht so aus:

    PHP:
    1. $mail->IsSMTP(); //Versand über SMTP festlegen
    Der ganze Code so:

    PHP:
    1. <?php
    2. include "inc_connect.php";
    3.    
    4.    //Klasse einbinden
    5.   require('mailer/class.phpmailer.php');
    6.   //require('mailer/class.smtp.php');
    7.  
    8.   $mail->IsSMTP(); //Versand über SMTP festlegen
    9.   $mail->Host = "smtp.1und1.de "; //SMTP-Server setzen
    10.  
    11.   $mail->SMTPAuth = true;     //Authentifizierung aktivieren
    12.   $mail->Username = "xxxxxxx";  // SMTP Benutzername
    13.   $mail->Password = "xxxxxx; // SMTP Passwort
    14.  
    15.  //Instanz von PHPMailer bilden
    16.  $mail = new PHPMailer();
    17.  
    18.  //Absenderadresse der Email setzen
    19.  $mail->From = "test@tanmar.info";
    20.  
    21.  //Name des Abenders setzen
    22.  $mail->FromName = "TanMar Tutorials";
    23.  
    24.  //Empfängeradresse setzen
    25.  $mail->AddAddress("meineaddy@web.de");
    26.  
    27.  //Betreff der Email setzen
    28.  $mail->Subject = "Die erste Mail";
    29.  
    30.  //Text der EMail setzen
    31.  $mail->Body = "Hallo! \n\n Dies ist die erste Email mit PHPMailer!";
    32.  
    33.  //EMail senden und überprüfen ob sie versandt wurde
    34.  if(!$mail->Send())
    35.  {
    36.     //$mail->Send() liefert FALSE zurück: Es ist ein Fehler aufgetreten
    37.     echo "Die Email konnte nicht gesendet werden";
    38.     echo "Fehler: " . $mail->ErrorInfo;
    39.  }
    40.  else
    41.  {
    42.     //$mail->Send() liefert TRUE zurück: Die Email ist unterwegs
    43.     echo "Die Email wurde versandt.";
    44.  }
    45.  
    46. ?>
    Kennt sich jemand damit aus? Hier ein Tutorial zu phpmailer

    http://www.tanmar.info/content/view/36/52/

    Danke im Vorraus


    GRUß
    Zuletzt bearbeitet: 10. November 2009
  2. einfach nur crack

    einfach nur crack mag Cookies & Kekse

    Du hast etwas Entscheidendes vergessen: du musst das Objekt erstmal erzeugen:
    Code (PHP):
    1. <?php
    2. require('mailer/class.phpmailer.php');
    3.  
    4. $mail = new PHPMailer(); // Hattest du vergessen
    5.  
    6. // ...
    7. ?>
  3. Grunge

    Grunge Grünschnabel

    ich bin ja ein tollpatsch. Komisch...aber nun kommt dieser Fehler:

    Code (Text):
    1. Die Email konnte nicht gesendet werden Fehler: Could not instantiate mail function.
    Nicht mal die einfach mail() FUnktion von PHP t. Kommen keine Emails an. UNd er gibt keine Fehlermeldung aus. Trotz error_reporting(E_ALL). . . .Wasn da los?
    Zuletzt bearbeitet: 11. November 2009
  4. einfach nur crack

    einfach nur crack mag Cookies & Kekse

    1. Bitte nichts im Ausgangspost ändern, wenn schon Antworten vorhanden sind
    2. So wie du dein Skript jetzt abgeändert hast kann es immer noch nicht funktionieren. Das $mail = new PHPMailer() muss vor das IsSMTP()

    EDIT: Ich vermute mal, dass PHPMailer auf die Funktion mail() aufbaut und diese beansprucht ein E-Mail-Programm auf dem Server. Du musst mal nachschauen, ob diese Funktion bei dir verfügbar ist.
    Zuletzt bearbeitet: 11. November 2009
    Grunge sagt Danke.
  5. Grunge

    Grunge Grünschnabel

    es steht direkt unter dem require. Wo soll ich das nachschauen? Phpinfo? Wo genau da?
  6. Maik

    Maik Gast

    Moin.
    Grundsätzlich hast du recht, aber in diesem Fall hat Grunge lediglich die SMTP-Zugangsdaten aus dem Code entfernt.

    Schau mal, was unter "PHP Core" für [phpf]sendmail_path[/phpf] eingetragen ist. Ebenso ist ein Blick in die php.ini lohnenswert.

    Und noch eine Bitte zum Schluß: Bitte vermeide im Forum den Chat-Ausdruck "f-u-n-z-t", da dieser auf der Blacklist steht, und vom System herausgefiltert wird, womit im Topic nur noch ein nichtssagendes "t" stehen geblieben ist.

    mfg Maik
  7. einfach nur crack

    einfach nur crack mag Cookies & Kekse

    An Maik: Die Änderung der Zugangsdaten ist natürlich richtig, aber er hat auch das Erstellen des Objekts eingefügt, was ich ihm erst in meinem Beitrag danach gesagt habe. Somit wirkt mein Beitrag eher verwirrend.
  8. Da_Chris

    Da_Chris Erfahrenes Mitglied

    Also ich würde jetzt gern erstmal noch den code gesamt sehen und vor allem ohne Fehler!
    Denn beim aus-x-en hast du ein " vergessen.....
    Ausserdem weis ich wo bei dir Zeile 8 ist?
  9. Grunge

    Grunge Grünschnabel

    Also erstens. Hab ich die x eingefügt damit hr nich alle meine SMTP ZUgangsdaten seht.
    Hier nochmal der ganze Code:
    PHP:
    1. <?php
    2.    
    3.    //Klasse einbinden
    4.   require('mailer/class.phpmailer.php');
    5.   $mail = new PHPMailer();
    6.   //require('mailer/class.smtp.php');
    7.  
    8.   $mail->IsSMTP(); //Versand über SMTP festlegen
    9.   $mail->Host = "smtp.1und1.de"; //SMTP-Server setzen
    10.  
    11.   $mail->SMTPAuth = true;     //Authentifizierung aktivieren
    12.   $mail->Username = "info@shaggagroup.de";  // SMTP Benutzername
    13.   $mail->Password = "xxxxxx"; // SMTP Passwort
    14.  
    15.   //Instanz von PHPMailer bilden
    16.   $mail = new PHPMailer();
    17.  
    18.   //Absenderadresse der Email setzen
    19.   $mail->From = "test@tanmar.info";
    20.  
    21.   //Name des Abenders setzen
    22.   $mail->FromName = "TanMar Tutorials";
    23.  
    24.   //Empfängeradresse setzen
    25.   $mail->AddAddress("benjaminscheuch@web.de");
    26.  
    27.   //Betreff der Email setzen
    28.   $mail->Subject = "Die erste Mail";
    29.  
    30.   //Text der EMail setzen
    31.   $mail->Body = "Hallo! \n\n Dies ist die erste Email mit PHPMailer!";
    32.  
    33.   //EMail senden und überprüfen ob sie versandt wurde
    34.   if(!$mail->Send())
    35.   {
    36.      //$mail->Send() liefert FALSE zurück: Es ist ein Fehler aufgetreten
    37.      echo "Die Email konnte nicht gesendet werden";
    38.      echo "Fehler: " . $mail->ErrorInfo;
    39.   }
    40.   else
    41.   {
    42.      //$mail->Send() liefert TRUE zurück: Die Email ist unterwegs
    43.      echo "Die Email wurde versandt.";
    44.   }
    45.  
    46. ?>
    Mit diesem Code bekomm ich folgende nette Fehlermeldung

    bei sendmail_path steht folgendes (in beiden Spalten)
    /usr/sbin/sendmail -t -i
    Was hat das zu bedeuten? Danke nochmal für eure Mühen

Diese Seite empfehlen