Avatar billede the_ghost Nybegynder
01. juli 2004 - 13:07 Der er 11 kommentarer og
1 løsning

document.lastModified problem

Jeg har dette script:

<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
function makeArray()
{
  arg = makeArray.arguments;
  for (var i = 0; i < arg.length; i++)
    this[i] = arg[i];
}

daMod = document.lastModified;
if (daMod.indexOf("70") != -1)
  {
    // Hvis fildatoen er før 1-1-1970 kl. 01.00.00
    // (som hos get2net) så crasher Netscape 3.x
    // og MSIE 3.x ved brug af Date-objektet.
    // Da årstallet må være 70 - er fildatoen
    // alligevel forkert. Derfor skrives:
    document.write("Last update: Ikke understøttet af serveren");
  }

daMod = Date.parse(daMod);
if (daMod <= 1000 * 60 * 60)
  {
    // Nogle browsere f.eks. Opera før v. 3.5
    // understøtter ikke Date.parse().
    // Las os blot skrive fildatoen:
    document.write("Last update: " + document.lastModified);
  }
else
  {
    m = new makeArray("Januar", "Februar", "Marts", "April", "Maj",
                      "Juni", "Juli", "August", "September", "Oktober",
                      "November", "December");
    daMod = new Date(daMod);
    document.write("Sidst opdateret: " + daMod.getDate() + ". ")
    document.write(m[daMod.getMonth()] + " ");
    year = daMod.getYear();
    year = (year < 1000) ? 1900 + year : year;
    document.writeln(year);
    time = "Kl. " + daMod.getHours() + ":" + daMod.getMinutes();
    document.write(time);
  }
</SCRIPT>

Er der nogen der kan fortælle mig, hvorfor jeg kun kan få den korrekte dato, hvis filen hedder index.htm og ikke index.php ...For nu vil jeg gerne have datoen, hvis den hedder index.php

På forhånd tak

...
The Ghost
Avatar billede roenving Novice
01. juli 2004 - 13:11 #1
Fordi, når det er en php-fil, er den lige nu blevet fortolket af php-fortolkeren på serveren, så den er just præcis fra nu (eller 30 millisekunder siden !-)

Sæt et felt i din side, som du f.eks. opdaterer via dit php-script (aflæs fil-datoen !-) og brug det i stedet for lastModified !o]
Avatar billede the_ghost Nybegynder
01. juli 2004 - 13:12 #2
.. Det skal lige siges at det virker fint i IE, men ikke i Opera
Avatar billede hmmhelpinghmm Nybegynder
01. juli 2004 - 13:13 #3
Hvordan kan man hente datoen på filen? roenving?
Avatar billede the_ghost Nybegynder
01. juli 2004 - 13:16 #4
<?php

$time = filectime("index.php"); //retunere en int med hvornår den sidst var ændret

?>
Avatar billede roenving Novice
01. juli 2004 - 13:17 #5
php kan hente den slags properties på filen, javascript kan ikke, men må holde sig til de properties, som findes i headeren ...
Avatar billede the_ghost Nybegynder
01. juli 2004 - 13:18 #6
min fejl... Du skal bruge filemtime("index.php");
Avatar billede erikjacobsen Ekspert
01. juli 2004 - 13:18 #7
IE snyder ;)  Du kan selv sende en "ændret dato" med i HTTP-headeren når du bruger et script,
det sker ikke automatisk, som ved HTML-filer.

Men ellers lave det da bare i PHP, som foreslået.
Avatar billede the_ghost Nybegynder
01. juli 2004 - 13:18 #8
roenving >> Ligger du ikke lige et svar.
Avatar billede the_ghost Nybegynder
01. juli 2004 - 13:22 #9
.. og du kan bruge getlastmod(), hvis det er den aktuelle fil du skal have fat i:

http://dk.php.net/manual/en/function.getlastmod.php og
http://dk.php.net/manual/en/function.filemtime.php
Avatar billede hmmhelpinghmm Nybegynder
01. juli 2004 - 13:22 #10
okay takker
Avatar billede roenving Novice
01. juli 2004 - 13:23 #11
Oki '-)
Avatar billede roenving Novice
01. juli 2004 - 13:37 #12
-- og tak for point ;~}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Solution Manager til Cyberdivisionen

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Vil du være med til at opbygge og udvikle Forsvarets dronekapacitet?