Fehler bei Mail Versand mit Anhang und einer Schleife!

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

  • Fehler bei Mail Versand mit Anhang und einer Schleife!

    Hallo,

    habe eine kleine Frage.

    Ich lese die Mailadressen, sowie den Anhang aus einer SQL Datenbank aus und möchte anshcließend die Mails mit dem Anhang verschicken.
    Da mehrere Leute Mails bekommen sollen, habe ich um die Funktion eine Schleife gebastelt, leider bekommen von insgesamt vier Mail Adressen nur zwei Leute die Mail. Woran kann das liegen?

    Hier der Code

    for ($i=1;$i<=$anzahl;$i++)
    {
    $datensatz = mysql_fetch_array($res);


    $Empfaenger = $datensatz["mail"];
    $Betreff = "Monatsreporting Ergebnisrechnung";

    $Dateiname = $datensatz["File"];
    $DateinameMail = $datensatz["File"];

    $Header = "From: Mein Name<Mailadresse>";

    $Trenner = md5(uniqid(time()));
    $Header .= "\n";
    $Header .= "MIME-Version: 1.0";
    $Header .= "\n";
    $Header .= "Content-Type: multipart/mixed; boundary=$Trenner";
    $Header .= "\n\n";
    $Header .= "This is a multi-part message in MIME format";
    $Header .= "\n";
    $Header .= "--$Trenner";
    $Header .= "\n";
    $Header .= "Content-Type: text/plain";
    $Header .= "\n";
    $Header .= "Content-Transfer-Encoding: 8bit";
    $Header .= "\n\n";
    $Header .= "Mailinhalt";

    $Header .= "\n";
    $Header .= "--$Trenner";
    $Header .= "\n";
    $Header .= "Content-Type: application/x-zip-compressed; name=$DateinameMail";
    $Header .= "\n";
    $Header .= "Content-Transfer-Encoding: base64";
    $Header .= "\n";
    $Header .= "Content-Disposition: attachment; filename=$DateinameMail";
    $Header .= "\n\n";
    $Dateiinhalt = fread(fopen($Dateiname, "r"), filesize($Dateiname));
    $Header .= chunk_split(base64_encode($Dateiinhalt));
    $Header .= "\n";
    $Header .= "--$Trenner--";

    mail($Empfaenger, $Betreff, "", $Header);

    }

  • #2
    und $anzahl stimmt mit der Anzahl der Mailadressen überein?
    nimm doch ne
    while($datensatz = mysql_fetch_array($res)){
    }
    Schleife
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      Hi,

      ja $anzahl stimmt überein, ist richtigerweise auf 4 (für die 4 Datensätze).

      Habe vorher schon die while Schleife versucht, leider wird die mail wieder nur an die ersten beiden verschickt :/

      Kommentar


      • #4
        bau doch mal n debugger ein, um das problem einzugrenzen:


        PHP-Code:
        for ($i=1;$i<=$anzahl;$i++)
        {
        $datensatz mysql_fetch_array($res);

        echo 
        $i.". Schicke Mail an: ".$datensatz[mail]." mit Datensatz: ".$datensatz[File]."<br />";


        oder sowat....
        Zuletzt geändert von arkos; 23.06.2006, 16:20.
        **********
        arkos
        **********

        Kommentar

        Lädt...
        X