Mails in PHP lesen

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

  • #76
    anscheinend ja doch,

    Fatal error: Cannot instantiate non-existent class: mimedecoder in /srv/www/htdocs/.../mail.php on line 60

    oder hast du die Klasse umbenannt
    TBT

    Die zwei wichtigsten Regeln für eine berufliche Karriere:
    1. Verrate niemals alles was du weißt!


    PHP 2 AllPatrizier II Browsergame

    Kommentar


    • #77
      Es lag an der Klasse es ist nicht mimedecoder sondern MailDecoder.
      Nun wird mir das angezeigt
      Array ( [header] => Array ( ) [body] => Array ( ) )

      Kommentar


      • #78
        zeig mal deinen aktuellen Code
        TBT

        Die zwei wichtigsten Regeln für eine berufliche Karriere:
        1. Verrate niemals alles was du weißt!


        PHP 2 AllPatrizier II Browsergame

        Kommentar


        • #79
          Mein Code:

          PHP-Code:
          (Verbindungen
          .
          $pop3 =  new POP3$server$port$user$pass );

          if ( !
          $pop3error $pop3->open() ) {
              if ( !
          $pop3error $pop3->login() ) {
                  if ( !
          $pop3error $pop3->stat() ) {
                      
          $mail_sizes $pop3->listing();
                      
          $ids $pop3->ids();
                      
          $row "";
                      for( 
          $ii 1;$ii <= count$mail_sizes );++$ii ) {
          $result mysql_query('SELECT server_id FROM mails');
          $alreadyhave = array();
          while (
          $row mysql_fetch_assoc($result))
          {
          $alreadyhave[] = $row['server_id'];
          }


                    if ( 
          in_array$ids[$ii], $alreadyhave ) )  { // alreadyhave ist ein Array mit Mailids
                              
          continue; // welche nicht nochmal vom Server geholt werden
                          
          }
                          
          $headers $body $h $b "";
                          if ( ( 
          $pop3error $pop3->retrieve$ii$headers$body ) ) == "" ) {
                              for( 
          $line 0;$line count$headers );$line++ ) {
                                  
          $h .= mysql_real_escape_string $headers[$line] ) . "\r\n";
                              }
                              for( 
          $line 0;$line count$body );$line++ ) {
                                  
          $b .= mysql_real_escape_string $body[$line] ) . "\r\n";
                              }



                             
          $row1 "  $ids[$ii]  ";
                             
          $row "('" $ids[$ii] . "'," $server[$i][0] . ",'$h','$b')";


                          }
                          
          $sql .= ( $sql?",":"" ) . $row;
                      } }

                  }
            
          $headers    implode("\n",$headers);
              
          $body        implode("\n",$body);
              
          $mail $headers."\n\n".$body;
              
          $decoder = new MailDecoder();
              
          $tmp $decoder->decode$mail );
              
          print_r$tmp );

              }

          if ( 
          $pop3error ) {
              echo 
          $pop3error;
          }
          $pop3->disconnect();

          echo 
          $headers## Zum Testen ob headers was ausgibt##
          ?> 

          Kommentar


          • #80
            was sagt denn $pop3error ?

            ist in $header und $body auch was drin?
            TBT

            Die zwei wichtigsten Regeln für eine berufliche Karriere:
            1. Verrate niemals alles was du weißt!


            PHP 2 AllPatrizier II Browsergame

            Kommentar


            • #81
              $pop3error sagt nichts.

              echo $headers;
              echo "<br><br>";
              echo $body;

              wird bei beiden was angezeigt.

              Kommentar


              • #82
                Original geschrieben von themonk


                echo $headers;
                echo "<br><br>";
                echo $body;

                wird bei beiden was angezeigt.
                und was ?
                TBT

                Die zwei wichtigsten Regeln für eine berufliche Karriere:
                1. Verrate niemals alles was du weißt!


                PHP 2 AllPatrizier II Browsergame

                Kommentar


                • #83
                  das ist unten zur Kontrolle, ob im Header und Body was drin ist

                  Kommentar


                  • #84
                    WAS wird angezeigt, wie sieht denn die Ausgabe aus?
                    TBT

                    Die zwei wichtigsten Regeln für eine berufliche Karriere:
                    1. Verrate niemals alles was du weißt!


                    PHP 2 AllPatrizier II Browsergame

                    Kommentar


                    • #85
                      Array ( [header] => Array ( ) [body] => Array ( ) ) (das sagt $tmp)

                      Return-Path:
                      X-Original-To:mail@mail.de
                      Delivered-To: user@ipx10799.ipxserver.de
                      Received: from mail.gmx.net (pop.gmx.de [213.175.64.20])
                      by ipx10799.ipxserver.de (Postfix) with SMTP id E07CA354102
                      for ; Wed, 12 Jan 2005 13:13:02 +0100 (CET)
                      Received: (qmail 26021 invoked by uid 0); 12 Jan 2005 12:12:55 -0000
                      Received: from 217.777.56.61 by www70.gmx.net with HTTP;
                      Wed, 12 Jan 2005 13:12:55 +0100 (MET)
                      Date: Wed, 12 Jan 2005 13:12:55 +0100 (MET)
                      From: "absender"
                      To: mail@mail.de
                      MIME-Version: 1.0
                      Content-Type: multipart/mixed; boundary="========GMXBoundary257941105531975"
                      Subject: Testbild
                      X-Priority: 3 (Normal)
                      X-Authenticated: #9752341
                      Message-ID: <25794.1105531975@www70.gmx.net>
                      X-Mailer: WWW-Mail 1.6 (Global Message Exchange)
                      X-Flags: 0001
                      X-UIDL: @a[!!GI=!!JVb!!Lk~"!
                      Status: RO (das sagt $headers)


                      This is a MIME encapsulated multipart message -
                      please use a MIME-compliant e-mail program to open it.

                      Dies ist eine mehrteilige Nachricht im MIME-Format -
                      bitte verwenden Sie zum Lesen ein MIME-konformes Mailprogramm.

                      --========GMXBoundary257941105531975
                      Content-Type: text/plain; charset="us-ascii"
                      Content-Transfer-Encoding: 7bit

                      Textmit bild



                      +++ Sparen Sie mit
                      --========GMXBoundary257941105531975
                      Content-Type: image/x-png; name="banner.png"
                      Content-Transfer-Encoding: base64
                      Content-Disposition: attachment; filename="banner.png"

                      iVBORw0KGgoAAAANSUhEUgAAAbcAAACjCAIAAACGxceFAAAABnRSTlMAfwB+AH1l/zhUAAAABmJL (das sagt $body)
                      Zuletzt geändert von themonk; 15.01.2005, 19:18.

                      Kommentar


                      • #86
                        wo sind die Zeilenumbrüche, die in die Mail gehören?
                        TBT

                        Die zwei wichtigsten Regeln für eine berufliche Karriere:
                        1. Verrate niemals alles was du weißt!


                        PHP 2 AllPatrizier II Browsergame

                        Kommentar


                        • #87
                          bei mir sehen dir immer so aus
                          Code:
                          Return-Path: <wwwrun@niclas.ebiz-webhosting.de>
                          X-Flags: 0000
                          Delivered-To: GMX delivery to [email]tbt1@gmx.de[/email]
                          Received: (qmail invoked by alias); 14 Jan 2005 14:45:32 -0000
                          Received: from niclas.ebiz-webhosting.de (EHLO niclas.ebiz-webhosting.de) (213.203.248.134)
                            by mx0.gmx.net (mx045) with SMTP; 14 Jan 2005 15:45:32 +0100
                          Received: by niclas.ebiz-webhosting.de (niclas.ebiz-webhosting.de, from userid 33)
                           id B10C477804B; Fri, 14 Jan 2005 15:45:37 +0100 (CET)
                          To: [email]tbt1@gmx.de[/email]
                          Subject: Antwort auf den Beitrag 'Knobelaufgabe ?'
                          From: "PHP script resource Mailer" <webmaster@it-development.de>
                          Message-Id: <20050114144537.B10C477804B@niclas.ebiz-webhosting.de>
                          Date: Fri, 14 Jan 2005 15:45:37 +0100 (CET)
                          X-GMX-Antivirus: -1 (not scanned, may not use virus scanner)
                          X-GMX-Antispam: -2 (not scanned, spam filter disabled)
                          X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=0.93.3.1
                             int  cnt   prob  spamicity histogram
                            0.00   58 0.013961 0.012796 ################################################
                            0.10    5 0.112869 0.021686 #####
                            0.20    0 0.000000 0.021686 
                            0.30    0 0.000000 0.021686 
                            0.40    0 0.000000 0.021686 
                            0.50    0 0.000000 0.021686 
                            0.60    0 0.000000 0.021686 
                            0.70    0 0.000000 0.021686 
                            0.80    0 0.000000 0.021686 
                            0.90    1 0.938503 0.060081 #
                          X-UID: 
                          Status: R
                          X-Status: NC
                          X-KMail-EncryptionState:  
                          X-KMail-SignatureState:  
                          X-KMail-MDN-Sent:  
                          
                          Hallo TBT,
                          
                          
                          ...
                          und natürlich die eventuellen Boundarys,


                          und so möchte der decoder sie haben
                          TBT

                          Die zwei wichtigsten Regeln für eine berufliche Karriere:
                          1. Verrate niemals alles was du weißt!


                          PHP 2 AllPatrizier II Browsergame

                          Kommentar


                          • #88
                            habe jetzt das obere Editiert
                            und mein Code iseht unten so aus
                            PHP-Code:
                                    $headers nl2br$headers );

                            $body nl2br$body);

                              
                            $headers    implode("\n",$headers);
                                
                            $body        implode("\n",$body);
                                
                            $mail $headers."\n\n".$body;
                                
                            $decoder = new MailDecoder();
                                
                            $tmp $decoder->decode$mail );
                                
                            print_r$tmp ); 
                            Fehler
                            Warning: implode(): Bad arguments. in /srv/www/htdocs/.../mail.php on line 62

                            Kommentar


                            • #89
                              wieso nl2br?
                              und welche ist zeile 62?
                              TBT

                              Die zwei wichtigsten Regeln für eine berufliche Karriere:
                              1. Verrate niemals alles was du weißt!


                              PHP 2 AllPatrizier II Browsergame

                              Kommentar


                              • #90
                                Original geschrieben von themonk
                                $body = nl2br( $body);
                                Die Funktion hatte ich dir nur für die Ausgabe genannt

                                Diese Funktion wandelt Zeilenumbrüche mit ASCII-Zeichen in HTML-Umbrüche um, die will aber die Klasse von TBT noch nicht haben, d.h. du übergibst den Header mit den \r\n dadrin und ohne vorher nl2br() rüberlaufen zu lassen!

                                Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                                bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                                Wie man Fragen richtig stellt

                                Kommentar

                                Lädt...
                                X