1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

PHP-Mailfunktion und Ajax

Discussion in 'Programmieren' started by Zuckermais, Dec 22, 2011.

Thread Status:
Not open for further replies.
  1. Zuckermais

    Zuckermais Byte

    Hi
    Ich schreibe gerade an einem Mailer in PHP. Wie kann ich da ohne viel Code Ajax so einbinden, dass (wie bei VirusTotal beim Upload) ein Layer aufpoppt mit Inhalt wie zum Beispiel "Mail 1 von 8 versendet"
    Verwendet wird (da Anhänge hin und wieder gebraucht werden), PHPMailer mit einem auf http://phpmailer.worxware.com/index.php?pg=exampleamail basierenden Sourcecode.
    Die E-Mail-Adressen werden in einer in PHP-Verpackten CSV-Datei gespeichert, etwa so:
    PHP:
    $gruppea="Adresse1|Adresse2|Adresse3"// und so weiter
    $gruppeb="Adresse4|Adresse5|Adresse6"// und so weiter
    Wie Zapfe ich nun den true-Wert (wird bei erfolgreicher Versendung zurückgegeben) an und schicke ihn an ein Ajax-Script?

    Zuckermais
     
  2. kalweit

    kalweit Hüter der Glaskugel

    Falsche Reihenfolge!

    1. JavaScript ruft die php Datei mit dem Mailer auf und übergibt im Request die Daten für den Mailversand.
    2. Das php Script generiert (selbst) definierte Statusmeldungen und gibt diese einfach aus (einfaches echo())
    3. Diese Ausgabe liest das ursprüngliche JavaScript ein (d.h. es geschieht automatisch). Nun muss das Javascript diese Ausgabe auswerten und dann die im Browser angezeigte Seite manipulieren

    Das konkreter auszuführen führt hier zu weit. Derlei ist aber Bestandteil jeder Einführung zum Thema AJAX.
     
  3. Zuckermais

    Zuckermais Byte

    Die Sache ist die:
    Das Skript läuft folgendermaßen ab:
    1. Mail 1 geht raus
    2. An Ajax: Mail 1 ist rausgegangen
    3. Mail 2 geht raus
    4. An Ajax: Mail2 ist rausgegangen
    5. Mail 3 geht raus
    6. An Ajax: Mail 3 ist rausgegangen

    Wärenddessen soll das Skript nicht beendet werden.
    Leider habe ich im Anfangsthread vergessen zu schreiben, dass das in etwa so funktionieren soll, wie der Uploader bei VirusTotal.com. Dort wird auch immer angezeigt, wieviel der Datei schon hochgeladen ist.

    Zuckermais
     
  4. wern44

    wern44 ROM

    Hallo,
    du rufst per Ajax deine PHP-Datei auf, in der die Mails versendet werden.
    Gibt deine Mailfunktion true zurück, mach einfach ein echo"OK". Sollte false zurück gegeben werden: echo"Fehler".
    Im Ajaxaufruf kannst du nun einfach testen ob "OK" oder "Fehler" zurückgegeben wurde.

    $.ajax({
    url: "test.html",
    success: function(data){
    if(data=="OK")
    {tu was}
    else ...
    }
    });

    Ich hoffe das hilft dir weiter.
     
  5. Zuckermais

    Zuckermais Byte

    ähhm, :bahnhof:

    Aber: Dass die Mailfunktion was zurückgibt, war ja schon eingeplant, zwar als 0 für Fehler und 1 für i.O., aber vom Prinzip ist das ja egal.
    Oder irre ich mich?
     
Thread Status:
Not open for further replies.

Share This Page