Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: dane o aktualizacji (last_modified)?
Forum PHP.pl > Forum > PHP
ins@ne
Witam!
Chce zrobic skrypt wypisujacy ostatnia aktualizacje strony. Ma on sprawdzic czy zaszly jakies zmiany na stronie i jesli zaszly to wypisac date zmian (chyba wiadomo o co chodzi - np.: "Ostatnia aktualizacja strony: 3 kwietnia 2003"). I teraz nie wiem skad wziac informacje o ewentualnych modyfikacjach? Znalazlem tu: http://pl2.php.net/manual/pl/print/ref.apache.php cos takiego jak last_modified i wydaje mi sie (sadzac po nazwie), ze to moze byc to tylko, ze nie bardzo wiem co z tym poczac. Trzeba to ustawic w plikach konfiguracyjnych na On? Jesli tak to w jakim? (httpd.conf?) Jak powinna wygladac zatem pelna linia tego polecenia? I jeszcze jedno - jak pozniej sie do tego odwolywac? Jest to zmienna systemowa? i normalnie odwolywac sie do niej $last_modified?
Troche duzo napisalem a wcale nie wiem czy dobrze mysle. Prosze zatem kogos madrzejszego o sprostowanie... Dzieki!
Omega
Powinieneś użyć w pliku którego aktualizację chcesz wyświetlać takiego kodu:
[php:1:2f93a3045c]<?php
$modyfikacja = filemtime($PHP_SELF);
?>[/php:1:2f93a3045c]
W ten sposób będziesz miał w tej zmiennej ostatnią modyfikację pliku.
cahe
Cytat
Notka: Ta funkcja zwraca czas kiedy bloki danych pliku zostały zapisane, to jest, czas kiedy zawartość pliku została zmieniona. Użyj date() na wyniku tej funkcji aby otrzymać czytelną datę modyfikacji do użycia jej w stopkach stron.
ins@ne
Wielkie dzieki! Wprawdzie nie do konca o to mi chodzilo, ale dzieki temu odnalazlem w manualu ta funkcje, o ktora mi chodzilo: getlastmod()

Takze od razu zamieszcze gotowy skrypt - moze dzieki niemu ktos nie bedzie musial tego pisac:

[php:1:5951d2d018]<?php
function OstatniaAktualizacja()
{
$TabData = explode("/",date("j/n/Y", getlastmod()));
print "<b>Ostatnia aktualizacja:</b> $TabData[0] ";
switch($TabData[1])
{
case '1' : print 'stycznia '; break;
case '2' : print 'lutego '; break;
case '3' : print 'marca '; break;
case '4' : print 'kwietnia '; break;
case '5' : print 'maja '; break;
case '6' : print 'czerwca '; break;
case '7' : print 'lipca '; break;
case '8' : print 'sierpnia '; break;
case '9' : print 'września '; break;
case '10' : print 'października '; break;
case '11' : print 'listopada '; break;
case '12' : print 'grudnia '; break;
}
print "$TabData[2]";
}
?>[/php:1:5951d2d018]
cahe
Cytat
Wielkie dzieki! Wprawdzie nie do konca o to mi chodzilo, ale dzieki temu odnalazlem w manualu ta funkcje, o ktora mi chodzilo: getlastmod()


getlastmod() i filemtime() różnią się tylko jedną rzeczą. W filemtime musisz podać nazwę pliku - getlastmod bierze ten aktualnie wykonywany.
ins@ne
no wlasnie - i to jest wydaje mi sie lepsze z tego wzgledu, ze jesli juz podajemy info o aktualizacji na stronie to z reguly chodzi o jakakolwiek aktualizacje a nie o aktualizacje konkretnej podstrony...
cahe
Cytat
no wlasnie - i to jest wydaje mi sie lepsze z tego wzgledu, ze jesli juz podajemy info o aktualizacji na stronie to z reguly chodzi o jakakolwiek aktualizacje a nie o aktualizacje konkretnej podstrony...


Owszem. Myślałem o czymś innym :-).
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.