Linda: Mailbenachrichtigung an mehrere User

Hallo Forumer,

kann mir jemand einen Tipp geben, wie ich am besten folgendes Problem löse:

In meinem Forum gibt es eine Funktion, die den Usern ermöglicht über neue Themen im Forum eine Benachritigung per Email zu erhalten. Momentan habe ich es ziemlich unelegant gelöst. Wenn ein neues Thema im Forum eingetragen wird, läuft eine Schleife, die die Mails an die User aufbereitet. Nun, wenn angenommen 150 User die Benachritigung erhalten möchten, kann die Verarbeitung etwas dauern und ich möchte nicht, dass der User, der das neue Thema erfasst darunter leiden muss :). Da aber die Funktion beim Erfassen des neuen Thema gestartet wird, kommt er nicht daran vorbei :( Wie könnte ich die Verarbeitung so starten, dass der User, der das neue Thema erfasst hat, ungestört weitermachen kann und die Mails im Hintergrund aufbereitet werden?

Danke für die Tipps.
Linda

  1. Hallo Linda,

    spontane Idee: zuerst die Daten mit "flush" oder/und "ob_flush" an den Browser senden, dann mailen ...

    http://de2.php.net/manual/de/function.flush.php
    http://de2.php.net/manual/de/function.ob-flush.php

    Ich weiß aber nicht, ob's funktioniert - am besten einfach mal testen ...

    Grüe,

    Sebastian

  2. Hello,

    benutze den CC:-Header oder den BCC:-Header der Mailfunktion. Die kannst Du bei mail() im $header eintragen. Du solltest aber darauf achten,. dass niemals ungeprüfte Usereingaben in das $header-Argument von mail() gelangen können. Die Mailfunktion ist injizierbar.

    $sql = 'select email from user where newsletter = 1';

    ...

    $_rec = array();
    $_emails = array();
    if ($res)
    {
      while($_rec = mysql_fetch_assoc($res))
      {
        $_emails[] = $_rec['email'];
      }
    }

    $mail_str = implode(",\n",$_emails);

    echo nl2br($mail_str);

    und dann in den CC:-Header packen:

    $header .= "CC: $mail_str\r\n";

    mail(.......,....,$header);

    http://de3.php.net/manual/en/function.mail.php

    Liebe Grüße aus http://www.braunschweig.de

    Tom

    --
    [ Computer-Camp für PHP-Anwender in den Sommerferien. Programmieren,
      Sport, Fun, Fete. Teilnehmermindestalter Gruppe 1: 14 Jahre
      Mindestalter Gruppe 2+3 18 Jahre, Info bei mir ]
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen