kostenloser Webspace werbefrei: lima-city


Mail limit

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    programtools

    programtools hat kostenlosen Webspace.

    hi
    kann ich mit php auslesen, wieviele Mails ich noch verschicken kann??
    Ich würde nähmlich gerne den Usern sagen, das ihre registrierungs-mail erst am nächsten Tag kommt wenn das so ist.
    (also wenn mail-limit = 50 erreicht, dann ausgaben "Achtung deine Registrierungs-Mail kommt erst morgen an!")

    Hoffe ihr könnt mir helfen!
    MVG
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Danke Karpfen :-)

    Vieleicht ist es auch nur eine blöde Idee von mir.
    Speichere einfach die Anmeldung mit Mailadresse und Datum und Versanddatum der Mail.

    Dann:
    SELECT versanddatum
    FROM bestaetigung
    WHERE versanddatum >= {Heutiger Tag, 0 Uhr}
    AND versanddatum < {Heutiger Tag, 24 Uhr}
    AND versanddatum != {leer was auch immer das dann ist}


    Die ergebnisse Zählst du.

    Anfangs jeden Tages kannst du dann eine Abfrage machen, welche Felder: Versanddatum noch frei sind, sortiert nach Datum auflisten, und abarbeiten.

    lg,


    Beitrag zuletzt geändert: 22.12.2009 11:00:37 von frodo89
  4. Das geht aber auch nochmal ne ganze Ecke umkomplizierter, indem du einfach eine Tabelle anlegst und dann wie folgt updatest:
    UPDATE `settings` SET `value` = (`value` + 1) WHERE `name` = 'MailsToday' AND TO_DAYS(`datum`) = TO_DAYS(CURRENT_TIMESTAMP);

    Diese Tabelle erfordert demnach die Felder name (VARCHAR, PRIMARY KEY) value (VARCHAR) und datum (TIMESTAMP), fertig.

    Die Abfrage funktioniert dann natürlich genau so einfach:
    SELECT `value` FROM `settings` WHERE `name` = 'MailsToday' AND TO_DAYS(`datum`) = TO_DAYS(CURRENT_TIMESTAMP);

    Das hat den Nebeneffekt, dass du dann auch sofort eine Statistik erhälst, an welchem Tag, wieviele Mails versendet wurden.

    Anmerkung: Der UPDATE-Befehl muss dann jedes Mal ausgeführt werden, wenn du eine Mail versendest.

    Edit: Natürlich muss ein entsprechender Eintrag existieren, bevor du ihn updatest. Teste also vorher, ob der Tag bereits in der Datenbank existiert und leg ihn ggf. an.

    ebenholz

    Beitrag zuletzt geändert: 22.12.2009 19:06:48 von ebenholz
  5. Hallo Ebenholz,

    Ich verstehe nicht ganz, was an deiner Lösung besser sein soll.
    In deiner Lösung wird einfach nur ein Wert um eins erhöht. Du bekommst nicht zurückgegeben, welche Mails schon versand sind, bzw. die Mailadressen die du abarbeiten musst. Und auch nicht in welcher Reihenfolge.
    Ich finde deine Lösung nicht wirklich unkomplizierter, sondern gleich kompliziert, und weniger flexibel.

    Zunächst meldet sich die Person ja an, und dabei wird der Eintrag angelegt.
    Dabei sollte festgehalten werden:
    → Die Mailadresse
    → Das aktuelle Datum
    → wenn die Mail gesendet wurde (in diesem Feld noch nicht 50 mit dem aktuellen Datum stehen) das aktuelle Datum

    Wozu benötige ich in jedem fall das aktuelle Datum?
    ggF habe ich an einem Tag 110 Anmeldungen, am nächsten Tag 100 Anmeldungen, und dann nochmal 70 Anmeldungen.
    Von den 110 Anmeldungen sollten bleiben also 60 Anmeldungen stehen.
    Am nächsten Tage sind dann noch 10 vom ersten Tag im Speicher, und 100 vom aktuellen Tag.
    Diese 10 müssen der Gerechtigkeit halber zuerst behandelt werden. Darum sollte man das Anmeldedatum mitspeichern, um die Liste entsprechend Sortieren zu können.
    Das entsprechende Versendedatum muss dann natürlich per UPDATE in die entsprechenden Felder eingefüllt werden.

    So kannst du dir erst recht eine tolle Statisitik ansehen, in der sowohl das Anmeldedatum als auch das Versendedatum und die durchschnittliche Verzögerung angezeigt wird.
    Du kannst auch automatisch bekannt geben, das die Mail erst in 2 Tagen ankommen wird, wenn mehr als 50 Überhangsanmeldungen eingegangen sind...

    usw.
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!