Ankündigung

Einklappen
Keine Ankündigung bisher.

PHP MAILER UND MEHRERE PDF attachen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • PHP MAILER UND MEHRERE PDF attachen

    Hallo hab echt ein Problem mit der Klasse.

    Will in einer Mail 2 Attachments anhängen aber es klappt nicht.

    Er nimmt nur das erste Attachment. Also das was ich zuerst angeben.Was zuerst steht ist egal.

    Hier mal der Code:
    PHP-Code:
        $a $DOCUMENT_ROOT.'/user_interface/a.pdf';
        
    $c $DOCUMENT_ROOT.'/user_interface/c.pdf';
       
        
    $MAIL = new phpmailer();
        
    $MAIL->MailFrom('anmeldung@test.de,test.de);
        $MAIL->AddReplyTo('
    anmeldung@test.de'test.de');
        
    $MAIL->AddCustomHeader("Return-Path: <anmeldung@test.de>");
        
    $MAIL->AddCustomHeader("Errors-To: <error@test.de>");
        
    $MAIL->AddSubject($subject);
        
    $MAIL->AddAddress(strip_tags($email));
        
    $MAIL->Body$mail_body;
        
    $MAIL->addAttachment($a,"a.pdf","base64","application/pdf");
        
    $MAIL->addAttachment($c,"c.pdf","base64","application/pdf");
    $MAIL->Send(); 

  • #2
    Hallo und willkommen im Forum!

    Wenn du Code postest, dann bitte ohne PHP-Fehler, kein Mensch weiß ob der Fehler im wirklichen Code auch auftritt oder hier nur durch copy&paste entstanden ist.

    Lass dir mal ausgeben, ob die Dateien überhaupt existieren und was in $MAIL steht und poste das ganze:
    PHP-Code:
    <?php
    var_dump
    (is_file($a), is_readable($a), is_file($c), is_readable($c));
    ?>
    Ich weiß jetzt nicht auswendig ob addAttachment() einen Rückgabewert hat, aber diesen könntest du ja auch einmal auslesen.

    Für dich kannst du auch mal
    PHP-Code:
    <?php
    var_dump
    ($MAIL);
    ?>
    anschauen und darin suchen, ob beide Attachments dort vermerkt sind - vielleicht stattdessen ja eine Fehlermeldungseintrag.

    Kommentar


    • #3
      Sorry für den Fehler im Code.

      So sieht das aus.

      2 Attachments sind drinn aber wenn die mail gesendet wird kommt nur eins an.

      PHP-Code:
      phpmailer Object
      (
          [
      Priority] => 3
          
      [CharSet] => iso-8859-1
          
      [ContentType] => text/plain
          
      [Encoding] => 8bit
          
      [ErrorInfo] => 
          [
      From] => [email]anmeldung@test.de[/email]
          [
      FromName] => Test
          
      [Sender] => 
          [
      Subject] => test
          
      [Body] =>testblblalalalalalalalal
          
      [AltBody] => 
          [
      WordWrap] => 0
          
      [Mailer] => mail
          
      [Sendmail] => /usr/sbin/sendmail
          
      [UseMSMailHeaders] => 
          [
      PluginDir] => /home/test/cvs/web/html/classes/
          [
      Version] => 1.54
          
      [ConfirmReadingTo] => 
          [
      LE] => 

          [
      Host] => smtp-out.test.de
          
      [Port] => 25
          
      [Helo] => mail.test.de
          
      [SMTPAuth] => 
          [
      Username] => 
          [
      Password] => 
          [
      Timeout] => 10
          
      [SMTPDebug] => 
          [
      to] => Array
              (
                  [
      0] => Array
                      (
                          [
      0] => [email]test@test.de[/email]
                          [
      1] => 
                      )

              )

          [
      cc] => Array
              (
              )

          [
      bcc] => Array
              (
              )

          [
      ReplyTo] => Array
              (
                  [
      0] => Array
                      (
                          [
      0] => [email]anmeldung@test.de[/email]
                          [
      1] => test.de
                      
      )

              )

          [
      attachment] => Array
              (
                  [
      0] => Array
                      (
                          [
      0] => /home/test/cvs/web/html/user_interface/a.pdf
                          
      [1] => a.pdf
                          
      [2] => a.pdf
                          
      [3] => base64
                          
      [4] => application/pdf
                          
      [5] => 
                          [
      6] => attachment
                          
      [7] => 0
                      
      )

                  [
      1] => Array
                      (
                          [
      0] => /home/test/cvs/web/html/user_interface/c.pdf
                          
      [1] => c.pdf
                          
      [2] => c.pdf
                          
      [3] => base64
                          
      [4] => application/pdf
                          
      [5] => 
                          [
      6] => attachment
                          
      [7] => 0
                      
      )

              )

          [
      CustomHeader] => Array
              (
                  [
      0] => Return-Path
                  [
      1] => Errors-To
              )

          [
      message_type] => attachments
          
      [boundary] => Array
              (
                  [
      1] => b1_4f5953d14e39caed72a74f6d6f1204b4
                  
      [2] => b2_4f5953d14e39caed72a74f6d6f1204b4
              
      )

          [
      Fromname] => test.de

      Kommentar


      • #4
        Wie siehts mit dem ersten Teil meiner Antwort aus, existieren die PDF-Dateien? (bitte nicht vermuten, sondern über die genannten Funktionen nachprüfen und die Ausgabe hier auch posten)

        Wobei ich sehe gerade, dass der boundary fast gleich ist, handelt es sich bei den PDF-Dateien um Duplikate? Vielleicht ist im PHPMailer ein Bug, probier es mal mit wirklich unterschiedlichen PDFs.

        Wie genau sieht der Quelltext der E-Mail denn aus?

        Zudem falsch erscheint mir der Absender "test.de", hier wäre die Angabe einer E-Mail-Adresse wohl sinnvoller. Hat alles vermutlich nichts mit dem fehlenden Attachement zu tun, aber Kleinvieh produziert auch Mist, wer weiß schon welche Seiteneffekte solche Fehler haben.

        Kommentar


        • #5
          Zitat von Zergling
          Wie siehts mit dem ersten Teil meiner Antwort aus, existieren die PDF-Dateien? (bitte nicht vermuten, sondern über die genannten Funktionen nachprüfen und die Ausgabe hier auch posten)

          Wobei ich sehe gerade, dass der boundary fast gleich ist, handelt es sich bei den PDF-Dateien um Duplikate? Vielleicht ist im PHPMailer ein Bug, probier es mal mit wirklich unterschiedlichen PDFs.

          Wie genau sieht der Quelltext der E-Mail denn aus?

          Zudem falsch erscheint mir der Absender "test.de", hier wäre die Angabe einer E-Mail-Adresse wohl sinnvoller. Hat alles vermutlich nichts mit dem fehlenden Attachement zu tun, aber Kleinvieh produziert auch Mist, wer weiß schon welche Seiteneffekte solche Fehler haben.


          Ich schrieb ja das ich die PDF einzeln versenden kann.
          nur nicht beide zusammen. Welches dabei zuerst geaddet wird ist egal.

          Demnach existieren die datein auch.

          Es kommt immer nur eins an.
          DAs mit dem test.de ist nur hier so. Bei mir hab ich da email.

          Die PDF's sind 2 vollkommen verschiedene PDF's.


          Hier der Mail Header:

          PHP-Code:
          Delivered-To: [email]bla@gmail.com[/email]
          Receivedby 10.140.255.20 with SMTP id c20cs74699rvi;
                  
          Tue3 Jul 2007 05:16:56 -0700 (PDT)
          Receivedby 10.66.232.10 with SMTP id e10mr349265ugh.1183465014443;
                  
          Tue03 Jul 2007 05:16:54 -0700 (PDT)
          Return-
          Path: <mail@test.de>
          Receivedfrom mail.test.de (mail.test.de [x.x.x.x])
                  
          by mx.google.com with ESMTP id c28si17576174fka.2007.07.03.05.16.53;
                  
          Tue03 Jul 2007 05:16:54 -0700 (PDT)
          Received-SPFpass (google.combest guess record for domain of [email]mail@test.de[/emaildesignates x.x.x.as permitted sender)
          Receivedfrom mail.testde ([x.x.x.x])
              
          by mail.test.de with esmtp (Exim 4.63)
              (
          envelope-from <mail@test.de>)
              
          id 1I5hJN-0004QA-0A
              
          for [email]bla@googlemail.com[/email]; Tue03 Jul 2007 14:16:53 +0200
          Received
          from www-data by mail.test.de with local (Exim 4.63)
              (
          envelope-from <mail@test.de>)
              
          id 1I5hJ7-0004sp-Pa
              
          for [email]bla@googlemail.com[/email]; Tue03 Jul 2007 14:16:37 +0200
          To
          : [email]bla@googlemail.com[/email]
          SubjectIhre Anmeldung
          Date
          Tue3 Jul 2007 14:16:37 +0200
          From
          "test" <anmeldung@test.de>
          Reply-to"test.de" <anmeldung@test.de>
          X-Priority3
          Errors
          -To: <error@test.de>
          MIME-Version1.0
          Content
          -Typemultipart/mixed;
              
          boundary="b1_4f5953d14e39caed72a74f6d6f1204b4"
          Message-Id: <E1I5hJ7-0004sp-Pa@test.de

          Kommentar


          • #6
            Hat es denn schon jemand mal geschafft 2 pdf damit zu versenden?

            Kommentar


            • #7
              2 oder mehrere PDF's sind kein Problem. Schreibe das einfach mal so:

              PHP-Code:
              <?
              $MAIL->addAttachment($a,"a.pdf"); 
              $MAIL->addAttachment($c,"c.pdf");
              ?>

              Kommentar


              • #8
                Geht auch nicht.

                Kommentar


                • #9
                  Sag mal von welchem PHPMailer sprechen wir eigentlich?

                  Code:
                  Fatal error: Call to undefined method PHPMailer::MailFrom() in T:\Webserver\projects\local\host\public\mailtest\test2.php on line 14
                  
                  
                  Fatal error: Call to undefined method PHPMailer::AddSubject() in T:\Webserver\projects\local\host\public\mailtest\test2.php on line 18
                  Die Fehler kommen bei dir nicht?

                  Kommentar


                  • #10
                    Ne.

                    Der Fehler kommt nicht.

                    Kommentar


                    • #11
                      Hähä, stimmt! Von welchem phpMailer reden wir? Bestimmt nicht von dem phpMailer, den Zergling und ich meinen: http://phpmailer.sourceforge.net

                      Jogi

                      Kommentar

                      Lädt...
                      X