Laatst bijgewerkt

Status
Niet open voor verdere reacties.

Gunneweg

Verenigingslid
Lid geworden
22 okt 2002
Berichten
574
Besturingssysteem
Windows 10 22H2
Ik maak op mijn website gebruik van het onderstaande script. Ik dacht dat het tot tevredenheid werkte, echter iedere keer als iemand naar de website gaat of een bepaald file wordt de "laatste bijgewerkt" datum en tijd aangepast aan de huidige datum en tijd.
Ik wil graag alleen "laatste bijgewerkt" als ik werkelijk iets aan de website of het file heb veranderd.
Kan iemand mij een tip geven hoe het wel moet?


<SCRIPT LANGUAGE="JavaScript"><!--
d = new Date();
day = d.getDay();
mon = d.getMonth();
date = d.getDate();
year = d.getYear();
hr = d.getHours();
min = d.getMinutes();

if(year<1000){year=(""+(year+11900)).substring(1,5);}
else{year=(""+(year+10000)).substring(1,5);}

if(hr==0){ap=" AM";hr=12}
else if(hr <= 11){ap=" AM"}
else if(hr == 12){ap=" PM";hr=12}
else if(hr >= 13){ap=" PM";hr-=12}

if(min <= 9){min="0"+min}

zday=new Array();
zday=["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"];
zmon=new Array();
zmon=["januari","februari","maart","april","mei","juni","juli","augustus","september","october","november","december"];

document.write("<strong>De website werd het laatst bijgewerkt op: </strong>" +zday[day]+" "+date+" "+zmon[mon]+" "+year+" "+hr+":"+min+ap+"");
//--></script>
 
Eh, dit is een javascriptje dat gewoon de huidige tijd aanmaakt en die weergeeft :P

Je moet de file modify time opvragen...ik weet niet of dat kan met Javascript, het kan wel heel makkelijk met PHP...

Je hebt nu:
HTML:
d = new Date();

Als je daar eens van maakt:
PHP:
<?php 
echo "d = new Date( " . filemtime ( __FILE__ ) . " ); ";
?>

Dan zou het moeten werken, mits je server PHP ondersteunt :)

Misschien kan het alleen met Javascript ook, maar dat weet ik zo niet :(
 
Kan idd ook gewoon in JavaScript.
Maak van
Code:
d = new Date();
het volgende:
Code:
d = new Date(document.lastModified);
 
Weer iets geleerd, thanks ;) Dat is idd een stuk makkelijker.
 
Van php weet ik absoluut niets, maar de aanvulling in de javascript met document.lastModified werkt bij mij helaas toch niet. De tijd blijft bij meerdere pogingen nog steeds wijzigen en ik denk dat het bij de datum ook zo is.
 
Probleem met datum laatste wijziging

Dit worden de 3 eerste regels van het javascript; zo werkt het wel!

e = Date.parse(document.lastModified)
d = new Date(e);
day = d.getDay();

Wimpieoh
 
Laatst bewerkt:
Is het een pagina die je door PHP laat opbouwen? Dus geen statische pagina ( .htm / .html )?

Want als de pagina door PHP wordt opgebouwd, is het moment waarop de pagina het laatst is aangepast, het moment waarop PHP de pagina geparsed heeft.
 
Ik werk helaas niet met php. Dus is het een statische pagina, waarvan ik net heb gecontroleerd dat het nog steeds niet werkt want de datum van vandaag 8 april 12.19 uur staat boven de pagina en dat is nou juist hetgeen ik automatisch wil laten veranderen zonder er steeds aan te moeten denken dat ik die datum en tijd in een regel bij ieder file moet veranderen.
Maar misschien werkt het alleen maar bij php.
 
Misschien zijn er nog oplossingen voor mijn vraag want tot op heden heb ik er nog geen oplossing voor ontvangen.
 
Hier een soort van lastmodified geval, werkt hier iig in ff.
PHP:
//js

function lastModified(){

   var modiDate = new Date(document.lastModified);

   var showAs = modiDate. getDate() + "/" + (modiDate.getMonth()+1);

   showAs += "/" + modiDate.getYear();
   showAs += " om " +modiDate.getHours()+":"+modiDate.getMinutes();
   return showAs;

} 


alert(lastModified());
je moet m zelf nog even ombouwen naar wat moois.

:thumb:
 
Laatst bewerkt:
Hallo Vegras,

Bedankt voor je reactie. Ik werk idd met FF maar php gebruik ik (nog) niet op mijn websites. Ik denk dat ik daarom dit script niet kan gebruiken. Ik weet dus ook niet hoe ik het in een file moet zetten. Heb het als javascript geprobeerd maar nada. Kun je me er nog een beetje mee helpen?
 
Laatst bewerkt:
Het script dat Vegas geeft is JavaScript, geen PHP.

Als je op je pagina

HTML:
<script type="text/javascript">
// hier de code van Vegras
</script>

zet, krijg je als het goed is een alert met het tijdstip waarop de pagina voor het laatst is aangepast.
 
Ik zou zo graag het regeltje: "De website werd het laatst bijgewerkt op: ......... op de pagina's zien die ik bijgewerkt heb.
Heb je aanvulling gebruikt en dan krijg ik idd een allert van Windows. Je denkt niet dat het script zoals ik dat in mijn eerste vraag had gezet op dezelfde manier is bij te werken.

Want dan komt er te staan De website werd het laatst bijgewerkt op: dinsdag 14 april 2009 10.22 uur

Misschien kan je me er bij helpen?
 
beetje knutselen:
PHP:
<script type='text/javascript'>

var modiDate = new Date(document.lastModified);
 
var dag = modiDate. getDay();
var dag2 = modiDate. getDate();
var maand =  modiDate.getMonth()+1;
var jaar = modiDate.getYear();
var uur = modiDate.getHours();
var min = modiDate.getMinutes();

if(jaar<1000){jaar=(""+(jaar+11900)).substring(1,5);}
else{jaar=(""+(jaar+10000)).substring(1,5);}

if(uur==0){ap=" AM";uur=12}
else if(uur <= 11){ap=" AM"}
else if(uur == 12){ap=" PM";uur=12}
else if(uur >= 13){ap=" PM";uur-=12}

if(min <= 9){min="0"+min}

zday=new Array();
zday=["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"];
zmon=new Array();
zmon=["januari","februari","maart","april","mei","juni","juli","augustus","september","october","november" ,"december"];

//nu kan je dus wat leuks doen:
var uitvoer = zday[dag] + " " + dag2 + " " + zmon[maand] + " " + jaar + " om " + uur + ":" + min + " " + ap;

document.write(uitvoer);
 
</script>
werkt hier.


:thumb:
 
Laatst bewerkt:
Hier zou ik ontzettend gelukkig van worden. Want al jaren hoor ik van bezoekers van mijn website: Ja zo kan ik het ook altijd de dag van vandaag en de tijd dat ik hem bezoek dat de website de laatst gewijzigde datum en tijd aangeeft.

Ik kom er morgen nog even op terug. In ieder geval heel erg bedankt alvast.
 
Hallo Vergras,

Bedankt,

Ik heb nog een beetje zitten stoeien met de gegevens en ik heb na een paar pogingen het volgende toegevoegd

var tekst = "De website werd het laatst bijgewerkt op: "

//nu kan je dus wat leuks doen:
var uitvoer = tekst + " " + zday[dag] + " " + dag2 + " " + zmon[maand] + " " + jaar + " om " + uur + ":" + min + " " + ap;

Het blijkt dat het nu precies zo werkt als ik voor ogen had.

(off topic) Fijne website heb je trouwens
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan