Stephan Huber: aufräumarbeiten autom.

Beitrag lesen

Hallo Ronny,

wie löse ich es , das gewisse felder in meiner mysql automatisch nach 2 tagen gelöscht werden? habe echt wenig erfahrung mit php oder mysql..wäre aber echt nett, wenn jemand helfen könnte ;)

zwei Ansätze (ich nehme an Du willst Feldinhalte oder Datensätze löschen, nicht die Felder, wenn Du das willst, ist Dein Datenbankdesign falsch):

  • wenn es nicht nach genau zwei Tagen sein muß, kannst Du beim Aufruf der Seiten (wenn Du mit php arbeitest, haßt Du ja sicher einen header oder ein anderes include, das in jeder Seite drinsteckt) einfach alles, was z.B. älter als zwei Tage ist, per SQL löschen. So ist das natürlich sehr ineffektiv, da jede Seite den Löschbefehl ausführt. Deswegen macht man dann noch ein Zufallsfunktion davor, die die Aufräumfunktion nur ausführt, wenn die Zufallszahl unter einem bestimmten Schwellenwert ist, der umso kleiner ist, je höher die Zugriffszahlen auf deine Seite sind, d.h. bei 100 Zugriffen am Tag setzt Du den Schwellenwert auf 2%, dann wird das Aufräumskript mit relativ großer Sicherheit oft genug ausgeführt, damit die Daten nach zwei Tagen gelöscht werden.
  • wenn Du unter Linux arbeitest, kannst Du auch einen Cron-Job einrichten, der Lynx mit deiner php-Aufräumseite aufruft.

Viele Grüße
Stephan