Emilio: Dateien löschen nach Zeitablauf

Hallo an Alle!
ich habe ein Anzeigenscript geschrieben in dem der User wählen kann, wie lange er die Anzeige mit Bild schaltet.
Das Bild wird mittels PHP in einen Ordner gespeichert.
Nun möchte ich aber, das dieses Bild nach Ablauf der Zeit sich automatisch wieder aus diesem Ordner löscht. Bekommt man soetwas hin?Kann mir jemand sagen, wie ich die mach?

  1. Hallo an Alle!

    Moin

    ich habe ein Anzeigenscript geschrieben in dem der User wählen kann, wie lange er die Anzeige mit Bild schaltet.
    Das Bild wird mittels PHP in einen Ordner gespeichert.
    Nun möchte ich aber, das dieses Bild nach Ablauf der Zeit sich automatisch wieder aus diesem Ordner löscht. Bekommt man soetwas hin?Kann mir jemand sagen, wie ich die mach?

    Hm entweder über nen cron job ( was wahrscheinlich nicht unterstützt wird von deinem anbieter ). Oder du musst bei jedem aufruf des scriptes überprüfen ob das bild über dem "verfallsdatum" ist und wenn es das ist, löschen.

    Mfg Analpha

    1. Hello,

      wie man das mit PHP und Ordnern macht, weiß ich nicht. Da müsste man ja einen Roboter steuern, der das Ding aus dem Schrank nimmt, die passende Seite aufschlägt und dann das eingeheftete Bild rausreißt. *scnr*

      Aber wie man das mit Dateien in Verzeichnissen macht, das weiß ich.

      Man schreibt sich eine Funktion, die die aufgerufene Datei löscht. Diese Funktion schaut ggf. auch in einer zentralen anderen Datei nach, ob sie schon zur Löschung ansteht.

      Das Löschen geht einfach mit unlink(). Der PHP-Daemon benötigt aber die geeeigneten Filesystem-rechte dafür.

      Wahrscheinlich muss man dann ja auch eine ganze Dateiengruppe löschen. Auch das kann man in der zentralen Datei hinterlegen.

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

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      1. Hello,

        Moin

        wie man das mit PHP und Ordnern macht, weiß ich nicht. Da müsste man ja einen Roboter steuern, der das Ding aus dem Schrank nimmt, die passende Seite aufschlägt und dann das eingeheftete Bild rausreißt. *scnr*

        Ich kann dir nicht ganz folgen.
        Angenommen jedes bild soll nach 1 woche gelöscht werden. Man liest das verzeichniss ein und checkt bei jedem bild das erstellungs/änderungs-datum. wenn das länger als eine woche zurückliegt -> löschen.

        sollte die lebensdauer der bilder unbekannt, also variabel sein muss man das ganze halt mit ner datenbank/textdatei machen.

        Mit einer datenbank ist es auf jedenfall performanter.
        Man schreibt einen eintrag bei erstellung in die db, liest beim script aufruf alles ein und wenn es über dem verfallsdatum liegt löscht man datenbank eintrag und bild.
        No problem.

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

        Tom

        Mfg AnalphaBestie

        1. Hello,

          wie man das mit PHP und Ordnern macht, weiß ich nicht. Da müsste man ja einen Roboter steuern, der das Ding aus dem Schrank nimmt, die passende Seite aufschlägt und dann das eingeheftete Bild rausreißt. *scnr*

          Ich kann dir nicht ganz folgen.

          Na, Ordner gibt es bei Staples odr dem Papiergroßhändler Deines Vertrauens. Man bekommt sogar rote, grüne, gelbe usw. und in mehreren Breiten.

          Angenommen jedes bild soll nach 1 woche gelöscht werden. Man liest das verzeichniss ein und checkt bei jedem bild das erstellungs/änderungs-datum. wenn das länger als eine woche zurückliegt -> löschen.

          sollte die lebensdauer der bilder unbekannt, also variabel sein muss man das ganze halt mit ner datenbank/textdatei machen.

          Hab ich 'was anderes gesagt?
          Habe doch deutsch geredet, oder?
          Muss man hier Fachchinesisch Amisprache sprechen?

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

          Tom

          --
          Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
          1. Ja das wäre eine Variante. Welchen Code verwende ich dann für das Auslesen des Datums und wichtiger noch für das Löschen des Bildes?

      2. Hallo Tom,

        Man schreibt sich eine Funktion, die die aufgerufene Datei löscht. Diese Funktion schaut ggf. auch in einer zentralen anderen Datei nach, ob sie schon zur Löschung ansteht.

        man kann einfach nachsehen, wie alt die Datei ist (filemtime) und sie ggf. löschen. Das ist nicht so umständlich.

        Gruß, Andreas

        --
        <img src="http://was-ist-das.andreas-lindig.de/was_ist_das_fetzen.jpg" border="0" alt="">
        http://was-ist-das.andreas-lindig.de
        1. Hello,

          Man schreibt sich eine Funktion, die die aufgerufene Datei löscht. Diese Funktion schaut ggf. auch in einer zentralen anderen Datei nach, ob sie schon zur Löschung ansteht.

          man kann einfach nachsehen, wie alt die Datei ist (filemtime) und sie ggf. löschen. Das ist nicht so umständlich.

          Wie jetzt? Woher weiß denn die Löschfunktion dann, wie lange die Datei leben sollte? Kann doch für jede Datei eine unterschiedliche Lebensdauer vereinbart sein - je nachdem, was der User bezahlt hat.

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

          Tom

          --
          Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
          1. Wie jetzt? Woher weiß denn die Löschfunktion dann, wie lange die Datei leben sollte? Kann doch für jede Datei eine unterschiedliche Lebensdauer vereinbart sein - je nachdem, was der User bezahlt hat.

            ach ja, hab ich nicht dran gedacht, daß die Zeiten unterschiedlich sind...

            Gruß, Andreas

            --
            <img src="http://was-ist-das.andreas-lindig.de/was_ist_das_fetzen.jpg" border="0" alt="">
            http://was-ist-das.andreas-lindig.de