Beim Mailversand über PHP treten 2 Probleme

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

  • Beim Mailversand über PHP treten 2 Probleme

    Hallo, brauche dringend eure Hilfe!!

    Beim Mailversand über PHP treten folgende 2 Probleme auf:

    PHPScipt:
    PHP-Code:
      while ($row mysql_fetch_object($result))
      {
       
    $header "From: $fromname<$from>\n";
       
    $header .= "Reply-To: $from\n";
       
    $header .= "X-Mailer: PHP/" phpversion(). "\n";
       
    $header .= "X-Sender-IP: $REMOTE_ADDR\n";
       
    $header .= "Content-Type: text/html";
       
    $to trim($row->email);
       
    mail($to,$subject,$message1,$header);
       
    $send++;
       
    $start1++;
     } 
    Es sollen ca.600 HTML Mails versendet werden.
    Das Script wird alle 50 Mails für 2sec unterbrochen und neu aufgerufen.

    Bei der Schleife (x 50Mails) kommt es immer wieder zu einem Abbruch durch die niedrige Timeout-Einstellung des Schlund-Servers. (6 Sekunden. Reagiert nicht mehr, Status fertig)
    Entweder ist die Datenbank zu langsam um die Mailadresse einzufügen, oder der Mailserver nimmt nichts mehr an, beides kann ich nicht beeinflussen.
    Über BCC versenden kommt nicht in Frage, da hier ein Abbruch erfolgt, wenn eine nicht erreichbare Mailadresse im BCC-Feld steht.

    Weiterhin bekommen viele der Empfänger (obwohl HTML beim E-Mail-Client aktiviert ist) nur den Quelltext samt der Headerangaben als Text angezeigt:

    Dies kann ich selbst leider nur nachvollziehen, wenn ich im header \n durch \r\n ersetze. Dann kommen alle Mails, die über kundenserver kommen als Quelltext wie oben an.
    Bei \n bei manchen Empfängern obwohl HTML aktiviert ist. GMX Adressen empfangen die Mails immer korrekt.

    Also: Das obige Script bricht ohne ersichtlichen Grund laufend ab und manche Empfänger bekommen trotz aktivierten HTML Empfang nur den HTML-Quelltext mit Header im Text angezeigt. Ist das vielleicht durch den Abbruch bedingt?

    Jedenfalls weiss ich nicht, wie ich das Script noch verbessern könnte. Oder brauche ich da für Schlund Server andere Einstellungen??
    Hat das mit \r\n im Header zu tun. Kann es sein, dass manche Empfänger dieses \r erwarten und deshalb der Header im Mailtext steht. Jedenfalls kann mit \r\n im Header nicht bei Schlund versendet werden.
    Wenn die Datenbank, oder der Mailserver so langsam (überlastet) ist, ist ein Timeout von 6sec. für einen „Premiumhoster“ ein Witz.
    Greift da ein Spamfilter?????? Ich betreibe kein Spam!!!!

    HILFE

  • #2
    Weiss da wirklich keiner Rat??

    Die Header-Zeilen werden durch \n getrennt. Ist \r\n für Windows Server? Gibt es E-Mail Clients die auf \r angewiesen sind? Jedenfalls klappt das Versenden bei Schlund nur mit \n.
    Zuletzt geändert von eltacker; 12.09.2002, 18:45.

    Kommentar


    • #3
      Ist wohl nicht von Interesse?
      Wo bleiben denn die *****Coder?

      Kommentar


      • #4
        nur weil keiner Antwortet, muß man nicht gleich ausfällig werden!

        Ist wohl nicht von Interesse?
        Wo bleiben denn die *****Coder?
        versuchs mal mit dem Header:
        PHP-Code:
        $mail_header "From: [email]deine@mail.de[/email] (Angezeigter Name)\r\n";
                        
        $mail_header .= "Content-Type: text/html\r\nContent-Transfer-Encoding: 8bit\r\n";
                        
        $mail_header .= "X-Priority: 1\r\n"
                        
        $mail_header .= "X-MSMail-Priority: High\r\n";
                        
        $mail_header .= "X-Mailer: PHP "phpversion(); 
        Wenn du weißt, daß die Schleife abbricht, versuch doch einfach mal weniger mails zu versenden!

        nimm dir 50 Mails zum testen und laufe das genze mit 5x10 durch, wenn das geht, steigerst du das ganze, bis du merkst, es geht nicht mehr!

        gruss

        Kommentar


        • #5
          mit \r\n kann bei Schlund,1+1,puretec nicht versendet. da kommt nur Quelltext an. geht nur \n

          Bei einem Test mit 25 mal 20 Durchläufe ist die Schleife bei 87 Mails abgebrochen. beim weitersenden lief es dann durch.
          bei einem abruch wird irgendwie der header verbogen, so dass manche mails mit header im text ankommen. hat das irgendwas mit \n bzw. \r\n zu tun?

          Kommentar


          • #6
            so wie der header ist, versende ich von mehreren hostern mails, u.a. auch Puretec & Schlund!

            gruss

            Kommentar


            • #7
              Kann ich nicht nachvollziehen

              Headertester:

              <html><head><title>Mailtest</title></head><body>
              <?php
              $to = "meine@adresse.de";
              $from = "adresse@adresse.de";
              $fromname = "tester";
              $subject = "HTML Testmail";
              $message = "<html><head></head><body><br>Test HTML-MAIL<br><br></body></html>";

              $header = "From: $fromname<$from>\r\n";
              $header .= "Content-Type: text/html\r\nContent-Transfer-Encoding: 8bit\r\n";
              $header .= "X-Priority: 1\r\n";
              $header .= "X-MSMail-Priority: High\r\n";
              $header .= "X-Mailer: PHP ". phpversion();

              /*
              $header = "From: $fromname<$from>\r\n";
              $header .= "Reply-To: $from\r\n";
              $header .= "X-Mailer: PHP/" . phpversion(). "\r\n";
              $header .= "X-Sender-IP: $REMOTE_ADDR\r\n";
              $header .= "MIME-Version: 1.0\r\n";
              $header .= "Content-Type: text/html; charset=iso-8859-1";
              */

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

              echo "<b>Mail versendet <a href=\"tester.php\">nochmal senden...</a></b><br>";
              ?>
              </body></html>

              Egal, ob ich den Header von MoRtAlan oder meinen nehme, das Mail kommt im Quelltext mit Header im Text.
              So:

              Content-Type: text/html

              Content-Transfer-Encoding: 8bit

              X-Priority: 1

              X-MSMail-Priority: High

              X-Mailer: PHP 4.1.1
              Message-Id: <E17qDCc-0002s7-00@mxbulk01.kundenserver.de>

              <html><head></head><body><br>Test HTML-MAIL<br><br></body></html>



              Wenn ich die \r\n durch nur \n ersetze, wird die Mail richtig als HTML Mail angezeigt.

              Warum funzt das bei \r\n nicht. Was genau ist der Unterschied????

              Kommentar

              Lädt...
              X