Haufenweise mails verschicken

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Haufenweise mails verschicken

    folgendes script habe ich mir gebastelt :

    PHP Code:
     <?php 
      
     
    include('smtp.php'); 
     
    $smtp = new SMTP'xxxxxxx''xxxxxxxx''xxxxxxxx' ); 
      
     
    $data file_get_contents('mailadresse.txt'); 
     
    $mails explode(';'$data); 
     foreach(
    $mails AS $num => $mail
     
    $smtp->send( array($mails), 'Testnachricht''Test1' ); 
     
    sleep(5
     
    header(??????????) 
     
    ?>
    aber ein paar Sachen scheinen da nicht zu stimmen ! Und zwar sind das $num ( ich hab ja keine num !? ) kann ich das einfach weglassen ? Ich will, dass alle 5sek 50 mails gesendet werden ( In der mailadresse.txt stehen GANZ viele Mailadresse )

    We kann helfen ?

  • #2
    ich brauch schnell hilfe bei diesem Problem !!

    Bitte !

    Comment


    • #3
      was funktioniert nicht? gib mal den Inhalt der "smtp.php" also die Klasse SMTP
      visit bepeppered.net

      Comment


      • #4
        der mailversand selbst stellt kein problem da,

        aber ich konnte dem Script noch nicht sagen, das es sich erst 50 Mailadressen aus der liste holen soll. Und was es mit dem $num auf sich hat weiß ich auch nicht

        Comment


        • #5
          wieso weist du nicht was es mit $num auf sich hat???

          Dachte du hast dir dieses Script selbst gebastelt??
          Die wenigsten Fehltritte begeht man mit den Füssen.

          Comment


          • #6
            Also $num ist der Name des Array Elements und $mail dessen Wert.

            Für die ganze Sache würde ich dir Cronjobs empfehlen. Auch solltest du das foreach gegen ein for oder while tauschen. Sonst gehst du immer alle Elemente durch (und verschickst auch alle Emails auf einmal).
            PHP Code:
            $i 0;
            while(
            $i 50){ 
                
            mail($mails[$i],'Testnachricht','Das ist ein Test');
                
            $i += 1;

            Gruss

            tobi
            Last edited by jahlives; 09-12-2005, 11:44.
            Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

            [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
            Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

            Comment


            • #7
              alles über num

              Comment


              • #8
                Danke, ich versuch das nachher mal einzubauen.

                Aber es ist so : Ich will das php Script einmal öffnen im Browser, denn Browser dann schließen und der schickt dann die mails in 50er Intervallen raus. Geht das nicht ?

                Sehr produktiv Tobiaz, aber so kenn ich dich ja
                Last edited by peter2005; 09-12-2005, 12:13.

                Comment


                • #9
                  ignore_user_abort

                  EDIT:
                  Ja, es gibt halt bestimmte Regeln, an die auch DU dich halten solltest. Da geht es mir nicht um produktiv oder nicht, sondern darum dir diese Regen näher zu bringen. Danke

                  Comment


                  • #10
                    Aber es ist so : Ich will das php Script einmal öffnen im Browser, denn Browser dann schließen und der schickt dann die mails in 50er Intervallen raus. Geht das nicht ?

                    NEIN SO GEHT ES NICHT !!!

                    es muss doch auch der nächste Wert an das Script wieder übergeben werden, z.B EMails 200 - 300 versenden
                    Bei Risiken und Nebenwirkungen fragen Sie Dr.Alban

                    Comment


                    • #11
                      ich versuch das gleich mal alles zu sammenzufügen

                      edit : Danke TObiaz - das war mal was gutes

                      *

                      0 - NORMAL
                      *

                      1 - ABORTED
                      *

                      2 - TIMEOUT

                      bloß welches soll ich nehmen ? Ich würde sagen die 0 !?
                      Last edited by peter2005; 09-12-2005, 13:22.

                      Comment


                      • #12
                        PHP Code:
                        <?php
                        ignore_user_abort
                        (0)
                        include(
                        'smtp.php');
                        $smtp = new SMTP'xxxxxxx''xxxxxxxx''xxxxxxxx' );

                        $data file_get_contents('mailadressen.txt');
                        $mails explode(';'$data);
                        $i 0;
                        while(
                        $i 50){ 
                            
                        $smtp->send( array($mails[$i]), 'Testnachricht''Test1' );
                            
                        $i += 1;
                        }
                        sleep(5)
                        header()
                        ?>
                        die eine Zeile mit dem Mailsenden musste ich anpassen, da ich euer tolles ( das mein ich ehrlich!! ) SMTP Script nutze ( http://php-resource.de/forum/showthr...=kein+sendmail )

                        Was in das header() reinmuss fehlt noch :-( Da find ich nichts gescheites was da rein kann

                        Ist das Script denn soweit richtig ? Wie gesagt sind die mails in der txt wie folgt angeordnet :

                        Code:
                        mailaccount@gmx.net;mailaccount@web.de;..;...

                        Wie siehts aus ?


                        Peter

                        Comment


                        • #13
                          PHP Code:
                          $smtp->send( array($mails[$i]), 'Testnachricht''Test1' ); 
                          Warum denn array($mails[$i]) ??????
                          Einfach so
                          PHP Code:
                          $smtp->send($mails[$i], 'Testnachricht''Test1' ); 
                          Gruss

                          tobi
                          Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                          [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                          Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                          Comment


                          • #14
                            PHP Code:
                            <?php
                            ignore_user_abort
                            (0)
                            include(
                            'smtp.php');
                            $smtp = new SMTP'xxxxxxx''xxxxxxxx''xxxxxxxx' );

                            $data file_get_contents('mailadressen.txt');
                            $mails explode(';'$data);
                            $i 0;
                            while(
                            $i 50){ 
                                
                            $smtp->send($mails[$i], 'Testnachricht''Test1' );
                                
                            $i += 1;
                            }
                            sleep(5)
                            header()
                            ?>
                            Und wenn ich dieses Script jetzt starte, dann wirds es sich die 50 ersten mailadressen aus der mailadresse.txt holen, an diese adressen die mail mit dem Inhalt Test1 schicken, dann 5sek warten und die zweiten 50 mailadressen nehmen und das selbe mit ihnen tun ?

                            Und was ist mit dem Inhalt von header() ?? Kommt da nichts weiter rein ?


                            Peter

                            Comment


                            • #15
                              PHP Code:
                              <?php
                              ignore_user_abort
                              (0)
                              include(
                              'smtp.php');
                              $smtp = new SMTP'xxxxxxx''xxxxxxxx''xxxxxxxx' );

                              $data file_get_contents('mailadressen.txt');
                              $mails explode(';'$data);
                              $i 0;
                              $ii 1;
                              $anz_mails count($mails);
                              $temp int($anz_mails 50);
                              while(
                              $ii <= $temp){
                                  while(
                              $i $ii 50){ 
                                      if(
                              array_key_exists($i,$mails) != true){
                                           break;
                                      }
                                      
                              $smtp->send($mails[$i], 'Testnachricht''Test1' );
                                      
                              $i += 1;
                                  }
                                  
                              sleep(5)
                                  
                              $ii += 1;
                              }
                              ?>
                              Ich wüsste nicht wozu du header() brauchen würdest. Der Code ist nicht getestet. Das wichtige dabei ist aber, dass du zwei Schleifen brauchst. Die äussere Schleife sorgt dafür, dass nach 50 gesendeten Mails 5 sek gewartet wird und die nächsten 50 drannkommen.
                              Probiers mal ob es so funzt.

                              Gruss

                              tobi

                              EDIT:

                              Noch eine Abbruchbedingung für den Mailversand eingebaut

                              Last edited by jahlives; 09-12-2005, 14:24.
                              Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                              [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                              Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                              Comment

                              Working...
                              X