Seite 1 von 1

img / Bild über frontend löschen

Verfasst: Mo 21. Aug 2017, 13:33
von JuergenEbbing
Hi!

Wir bieten einer Community die Möglichkeit Bilder hochzuladen. Es wird ein Objekt angelegt mit einem img-Feld (foto) und ein Textfeld (untertitel). Das Objekt wird gesichert, aber in keiner Liste o.ä. ausgegeben, weil wir ein drittes Feld (status) mit einer Null füllen.

Nun schaut sich der Redakteur im Frontend alle Objekte mit Status "0" an. Hier kann er das Objekt zunächst geparkt - die ID wird an eine Seite übergeben auf der dann $obj->we_unpublish(); aufgerufen. Gelöscht werden die Daten dann später innerhalb WebEdition - wir wollen die Einträge zunächst für die Statistik zählen.

Nun ist ja auch die ID des eingesetzten img (Datenbankfeld "foto") bekannt. Aber wie kann ich dieses Bild vom Server löschen und aus der Datenbank austragen? Wir könnten zwar durch oben aufgeführtes Vorgehen dafür sorgen, dass die abgelehnten Bilder zwar nirgendwo aufgerufen werden, aber diese würden ja 1) unseren Server unnötig füllen 2) nicht ins Netz gehören - die Ablehnung wird ja seine Gründe haben ;-)

Schöne Grüße aus dem Münsterland!

Jürgen

Re: img / Bild über frontend löschen

Verfasst: Di 22. Aug 2017, 09:58
von WBTMagnum
Hallo Jürgen,

Wir haben so etwas ähnliches wie folgt umgesetzt:
  • Upload der Bilder übers Front-End.
  • Bilder werden in einem öffentlich nicht zugänglichen Ordner abgelegt.
  • Bei Veröffentlichung (Approval durch einen Redakteur) werden die Bilder mittels Hook in den öffentlichen Bereich verschoben.
  • Ein Cleanup Script durchforstet von Zeit zu Zeit den nicht öffentlichen Ordner und entfernt die nicht benötigten Bilder wieder aus dem System.
Was bei euch vermutlich besser passt:
Wenn die Einträge ohnehin über das Backend gelöscht werden, könnt ihr die Bilder mit einem Delete-Hook löschen. Einfach auf die Klasse Filtern, Status und Bild-ID(s) auslesen und ggf. löschen.


HTH,
Sascha