Datumabfrage funktioniert nicht

EddieG

Erfahrenes Mitglied
hi,
ich möchte das alter einer datei überprüfen welches im timestamp gesendet wird.
wenn es älter als 24 h ist dann soll eine Fehler Ausgabe kommen sonst weiter gehen im Script.

PHP:
$pruefdatum = date("M jS, 'y, H:i",$filedate);

if(time() - $pruefdatum  > 4 * 60 * 60)
{
unlink("$pfad");
	echo"<font color=\"#FFFFFF\">the file is to old!</font>
<br /><a href=\"javascript:history.go(-2);\" class=\"titlelink\">Back</a>";
}else
{
}
 
Zuletzt bearbeitet:
Hi,

ich denke das könnte dir weiter helfen

PHP:
$timestamp_jetzt = time();
$timestamp_gestern = $timestamp_lastweek -86400;

$dateidatum = filemtime($filename);

if($dateidatum < $timestamp_gestern)
		{	
			unlink($filename);
		}

Hier nimmt er erst den Aktuellen Timestamp. Dann zieht er 24Stunden (86400 Sek.) davon ab. Somit hast du den Timestamp von vor 24Stunden.

danach liest du die Zeit der Datei, hier $filename, aus und kannst die werte nun prüfen. Wenn die Datei älter als 24 Stunden ist... wird sie gelöscht.

Hoffe es hilft
 
Hm wäre eine Lösung aber das kann man zu leicht manipulieren.
das Datei format was ich nutze speichert das datum im Datei header.
welches eben ein timestamp ist
also habe ich deins umgeschrieben in
PHP:
$pruefdatum = $info->CreationDate
$timestamp_jetzt = time();
$timestamp_gestern = $timestamp_lastweek -86400;

if($pruefdatum < $timestamp_gestern)
        {    
            unlink($filename);
        }

so lässt er nun alles durch ob 24 alt oder 40h alt ist egal kommt alles durch.
 
Hi

aus deinem Code geht nicht hervor was $timestamp_lastweek ist.
Wie wäre es denn so?
PHP:
$pruefdatum = $info->CreationDate;
$timestamp_gestern = time()-86400; //86400sec = 1Tag

if($pruefdatum < $timestamp_gestern)
        {    
            unlink($filename);
        } 
echo 'Pruefdatum: '.$pruefdatum.' gestern: '.$timestamp_gestern; //Testausgabe
 
sry,...

habe mich da "verkopiert"^^ hehe

es sollte so aussehen.

PHP:
$pruefdatum = $info->CreationDate
$timestamp_jetzt = time();
$timestamp_gestern = $timestamp_jetzt  -86400;

if($pruefdatum < $timestamp_gestern)
        {    
            unlink($filename);
        }

Sollte schrittweise dargestellt werden damit das Verständnis besser ist.
 
An den Thread-Ersteller:
Um solche Fehler zu sehen kannst du an den Anfang deines Scriptes mal folgende Zeile schreiben:
PHP:
<?php
error_reporting(E_ALL); //gibte alle notices,warnings,whatever aus
//dein code

//nochmehr code

//vielleicht noch mehr code
?>
 

Neue Beiträge

Zurück