Siracher
New member
Hallo zusammen,
habe ein Programm zusammengebastelt, welches aufgrund der eingegebenen Daten für jeden Tag ein csv anlegt und alle Daten darin speichert. Das klappt einwandfrei :d
jetzt wollte ich noch eine Funktion erstellen, welche Dateien die älter als 30 Tage sind, automatisch löscht. Das funktioniert auch wunderbar, nur überschreibt mir die else anweisung am schluss die vorangegangene Variable.
D.H. unlink wird ausgeführt, jedoch wird die variable $error_msg mit der else Anweisung überschrieben.
Steig nicht ganz dahinter, warum das so nicht klappt
jemand eine Idee?
habe ein Programm zusammengebastelt, welches aufgrund der eingegebenen Daten für jeden Tag ein csv anlegt und alle Daten darin speichert. Das klappt einwandfrei :d
jetzt wollte ich noch eine Funktion erstellen, welche Dateien die älter als 30 Tage sind, automatisch löscht. Das funktioniert auch wunderbar, nur überschreibt mir die else anweisung am schluss die vorangegangene Variable.
PHP:
<?php
date_default_timezone_set('UTC');
// define directory
$path = "../contactform_entries/";
//get current date
$today = date('Y-m-d');
//decrease the period of the current time. Currently set to 30days
$delete_periode = time() - (30 * 24 * 60 * 60);
$verzeichnis = openDir($path);
// read content in the directory
while ($file = readDir($verzeichnis))
{
// do not include upper directories!
if ($file != "." && $file != "..")
{
if ($file < date('Y-m-d', $delete_periode))
{
$error_msg = "Datei gelöscht: " . $file . "<br />";
unlink($path . $file);
}
else
{
$error_msg = "nichts gelöscht";
}
}
}
closeDir($verzeichnis); // close directory
echo $error_msg;
?>
D.H. unlink wird ausgeführt, jedoch wird die variable $error_msg mit der else Anweisung überschrieben.
Steig nicht ganz dahinter, warum das so nicht klappt
jemand eine Idee?
Zuletzt bearbeitet: