• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Datei löschen bei evtl. gleichzeitigem Zugriff

thuemmy

Aktives Mitglied
Hallo Forum,

ich habe folgendes kleines Problem. Ein Script erstellt ein Bild und dieses soll dann ein bestehendes Bild ersetzen, also zuerst löschen. Nun habe ich mir für den Fall, dass das Bild gerade ausgeliefert wird, folgende Routine überlegt.
PHP:
while (unlink("bilder/freie-gaerten/gartenfrei.jpg") == FALSE) {
  ;
}
if (copy("bilder/freie-gaerten/arbeit.jpg", "bilder/freie-gaerten/gartenfrei.jpg") == FALSE) {
  exit("Fehler beim Kopieren (Script 3)");
}
Ist das so ok, oder gibt es da eine komplett andere (bessere) Möglichkeit. Kann man ja auch schlecht testen.

Gruß thuemmy
 
Die while-Schleife kann auf jeden Fall Probleme machen, wenn z.B. die Dateirechte nicht stimmen, der Zugriff auf diese Datei länger blockiert wird, etc.

Da ich den Grund, warum das Bild kopiert werden soll, nicht kenne, einige Fragen:

Warum soll das Bild ausgetauscht werden?
Lässt sich nicht besser per Script regeln, welches Bild angezeigt werden soll?
 
Moin,

es geht um die Verwaltung von freien Gärten eines Kleingartenvereins. Wenn der Status der Gärten geändert wird, dann soll auch der Lageplan geändert werden (freie Gärten werden transparent rot eingefärbt). Im Script gehe ich folgendermaßen vor.
  • Im ersten Script wird, wenn vorhanden, die bestehende Datei arbeit.jpg gelöscht und aus plan.jpg neu erstellt.
  • Im zweiten Script werden die freien Gärten in arbeit.jpg eingezeichnet
  • Im dritten Script wird der das "veraltete" Bild durch das neugezeichnete arbeit.jpg ersetzt.
Ein Problem mit den Dateirechten sehe ich nicht, da ich die ja selber (bzw. das Script) verwalte. Und eine längere Blockade kann ich mir nun auch unschwer vorstellen. Das Script startet normalerweise nur eine Person und der Abruf der Seite mit dem Bild dauert ja auch nicht wirklich lange.

Gruß thuemmy
 
Zurück
Oben