Zur Navigation

letzte aktualisierung

1 tobi

hallo zusammen,

ich habe in meiner webseite im footer folgende angabe:
Letzte Aktualisierung der Webseite am 20.12.2009 | 02:01:25

jedes mal wenn ich eine datei via ftp hochlade ändert sich automatisch das datum und die uhrzeit. es wird quasi in einem script gecheckt, wann die letzte datei hochgeladen wurde.

nun habe ich ein kleines problem, welches ich nicht weiß ob und wie ich dies beheben kann.

auf meiner webseite habe ich ein formlar, welches daten an die db sendet und auch speichert. diese inhalte werden dann automatisch auf der webseite eingeblendet.
jetzt kommt das große aber:
diese automatische einblendung der inhalte, ist ja auch eine veränderung bzw aktualisierung der homepage. diese aktualisierung wird ja nicht berücksichtigt, da die daten ja nicht in der datei gespeichert werden.

auch habe ich einige cronjobs, welche daten auslesen und in der db speichern und auf der hp eingelesen werden. auch dies wird ja bei der angabe der letzten aktulisierung nicht berücksichtigt.

kann ich dies irgendwie beheben?

mfg tobi

20.12.2009 14:24

2 Jörg Kruse

Wenn über das Formularscript oder das Cronscript ein Inhalt aktualisiert wird, speicherst du zusätzlich einen Timestamp in der Datenbank oder in einer Textdatei. Das Script, welches die mtime der Dateien prüft, erweiterst du so, dass es den ermittelten Zeitpunkt mit diesem Timestamp vergleicht. Der aktuellere Zeitpunkt von beiden entspricht dann dem Aktualisierungszeitpunkt der Homepage.

20.12.2009 15:34

3 tobi

mal schaun wie ich die tage zeit habe und ob ich dass so hinbringe, im moment habe ich folgendes via ein scriprt mit eingebaut, welches via cronjob ausgeführt wird:

<?php
// Datei festlegen:
$filename = "../aktualisierungloeschendatei.php";

// prüfen, ob es die Datei schon gibt
if(file_exists($path.$filename)) 
{ echo "Die Datei existiert schon.<br>"; }
else 
{ echo "Die Datei existiert noch nicht.<br>"; }

if ( @ unlink ( $filename ) )
{
  echo 'Die Datei ' . $dfilename . ' wurde gelöscht!';
}
else
{
  echo 'Konnte die Datei ' . $filename . ' nicht löschen!';
}

// Datei neu anlegen bzw. öffnen
$file = fopen($path.$filename, "w");
// in die Datei schreiben
$geschrieben = fwrite($file, "Mein Text");
// Datei schliessen
fclose($file);
?>

aber ich glaub nicht dass das gut programmiert ist.

schaut ob die datei vorhanden ist, wenn ja wird sie gelöscht und eine neue erstellt und wenn sie nicht da ist, wird eine neue erstellt.

21.12.2009 18:36

4 Jörg Kruse

Wenn du eine Datei mit dem Modus "w" zum Schreiben öffnest, musst du diese nicht zuvor löschen und dann neu anlegen. Wenn die Datei bereits einen Inhalt hat, wird dieser überschrieben (im Gegensatz zum Modus "a"). Wenn die Datei noch nicht existiert, wird diese zuvor neu angelegt. Siehe auch:

http://php.net/manual/de/function.fopen.php

21.12.2009 18:43

Beitrag schreiben (als Gast)

Die Antwort wird nach der Überprüfung durch einen Moderator freigeschaltet.





[BBCode-Hilfe]