PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   Suche ein Script löscht automatisch Bilder, wenn die gesamte Grösse = X (http://www.selfphp.de/forum/showthread.php?t=16715)

Taktaky 05.05.2007 13:35:08

Suche ein Script löscht automatisch Bilder, wenn die gesamte Grösse = X
 
Hallo,

es ist sehr sinnvoll wenn man ein Script so erstellt, das es von alleine und automatisch die Bilder löscht immer wenn die gesamte Größe z.B. 1 GB.

Momentan muss ich immer manuell die alte Bilder löschen, damit ich immer einen freien Speicherplatz habe.

Ich werde damit viel Zeit sparren, wenn ich das Script in meine Webseite verwende, da ich und auch andere User die Webseite zum Uploaden von Bilder verwenden.

Für jedes Script bin sehr dankbar auch wenn es sehr simple :)


Ich habe versucht mit dem Script von tkswim leider nicht geschafft das Script zubearbeiten, da ich nicht viel von php kenne :(

Zitat:

<?php

# Dateien löschen wenn die Dateien zusammen zu groß sind
if(isset($aktionen['groesserals'])){
# pruefen wie groß das Verzeichnis ist
$groesse = 0;
foreach($vorhandenedateien as $datei){
$groesse += $datei['groesse'];
}
$groesse /= 1024*1024;
if($groesse > $aktionen['groesserals']){
# Dateien umsortieren
function groessensort($a, $b){
if($a['erstellt'] == $b['erstellt']){
return 0;
}
return ($a['erstellt'] < $b['erstellt'])?-1:1;
}
usort($vorhandenedateien,'groessensort');
$i = 0;
# so lange löschen, bis die Gesamtgröße unter dem Sollwert liegt
while($groesse > $aktionen['groesserals']){
$groesse -= ($vorhandenedateien[$i]['groesse']/(1024*1024));
unlink($vorhandenedateien[$i]['dateiname']);
unset($vorhandenedateien[$i]);
$geloeschte++;
$i++;
}
}
}
if($geloeschte > 0){
$meldungen[] = 'Es '.($geloeschte==1?'wurde 1 Zeitenentwicklungsbild':'wurden '.$geloeschte.' Zeitenentwicklungsbilder').' gelöscht.';
}
?>

Gruß


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:51:13 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.