/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Autoindsæt: Sidst opdateret d. xx-xx-xxxx
Fra : Mikael Nørrelund And~


Dato : 05-08-03 09:17

Hejsa,

jeg skal have lavet et script, så der automatisk indsættes
ind linje med hvornår den enkelte side er opdateret.

Jeg har rigtig mange sider, men hver side skal have den
eksakte opdateringsdato.

Har I nogen gode links?
- Jeg har søgt lidt inspiration i færdige scripts, men kan
kune finde et enkelt på russik eller lignende.
http://www.softlinks.ru/download/script.php?scriptID=94

Jeg kan desvære ikke rigtig forstå det.

Et link til en tutorial er også fin.
Jeg ved Stones WebWriter har funktionen indbygget,
men jeg har betalt for MacroMedia DreamWeaver :)
Kan man mon sætte samme funktion i DW?

--
Mvh.
Mikael Nørrelund Andersen

Mail adressen virker.


 
 
Thomas More (05-08-2003)
Kommentar
Fra : Thomas More


Dato : 05-08-03 10:11


Helt dymanisk, uden du behøver indsætte filnavn for den php side koden er i,
kan du lave det således :

<?PHP
$update= date('l dS of F Y - H:i:s T',@filectime(str_replace("/", "",
$_SERVER['PHP_SELF'])));
echo"Last updated : $update";
?>


"Mikael Nørrelund Andersen" <nospam@mikael-noerrelund.dk> wrote in message
news:3f2f67c0$0$48903$edfadb0f@dtext02.news.tele.dk...
> Hejsa,
>
> jeg skal have lavet et script, så der automatisk indsættes
> ind linje med hvornår den enkelte side er opdateret.
>
> Jeg har rigtig mange sider, men hver side skal have den
> eksakte opdateringsdato.
>
> Har I nogen gode links?
> - Jeg har søgt lidt inspiration i færdige scripts, men kan
> kune finde et enkelt på russik eller lignende.
> http://www.softlinks.ru/download/script.php?scriptID=94
>
> Jeg kan desvære ikke rigtig forstå det.
>
> Et link til en tutorial er også fin.
> Jeg ved Stones WebWriter har funktionen indbygget,
> men jeg har betalt for MacroMedia DreamWeaver :)
> Kan man mon sætte samme funktion i DW?
>
> --
> Mvh.
> Mikael Nørrelund Andersen
>
> Mail adressen virker.
>



Thomas More (05-08-2003)
Kommentar
Fra : Thomas More


Dato : 05-08-03 10:11


Hmm....det hele kom ikke med af en eller anden grund :

<?PHP
$update= date('l dS of F Y - H:i:s T',@filectime(str_replace("/", "",
$_SERVER['PHP_SELF'])));
echo"Last updated : $update";
?>


"Thomas More" <thomasmore25@hotmail.com> wrote in message
news:bgnsa7$qjj3c$1@ID-157211.news.uni-berlin.de...
>
> Helt dymanisk, uden du behøver indsætte filnavn for den php side koden er
i,
> kan du lave det således :
>
> <?PHP
> $update= date('l dS of F Y - H:i:s T',@filectime(str_replace("/", "",
> $_SERVER['PHP_SELF'])));
> echo"Last updated : $update";
> ?>
>
>
> "Mikael Nørrelund Andersen" <nospam@mikael-noerrelund.dk> wrote in message
> news:3f2f67c0$0$48903$edfadb0f@dtext02.news.tele.dk...
> > Hejsa,
> >
> > jeg skal have lavet et script, så der automatisk indsættes
> > ind linje med hvornår den enkelte side er opdateret.
> >
> > Jeg har rigtig mange sider, men hver side skal have den
> > eksakte opdateringsdato.
> >
> > Har I nogen gode links?
> > - Jeg har søgt lidt inspiration i færdige scripts, men kan
> > kune finde et enkelt på russik eller lignende.
> > http://www.softlinks.ru/download/script.php?scriptID=94
> >
> > Jeg kan desvære ikke rigtig forstå det.
> >
> > Et link til en tutorial er også fin.
> > Jeg ved Stones WebWriter har funktionen indbygget,
> > men jeg har betalt for MacroMedia DreamWeaver :)
> > Kan man mon sætte samme funktion i DW?
> >
> > --
> > Mvh.
> > Mikael Nørrelund Andersen
> >
> > Mail adressen virker.
> >
>
>



Mikael Nørrelund And~ (05-08-2003)
Kommentar
Fra : Mikael Nørrelund And~


Dato : 05-08-03 11:20

Thomas More wrote:
> <?PHP
> $update= date('l dS of F Y - H:i:s T',@filectime(str_replace("/", "",
> $_SERVER['PHP_SELF'])));
> echo"Last updated : $update";
> >


Hvor henter denne datoen fra?
- Den skriver 1. januar 1970!

Jeg skal dog have lavet det om, så det er på dansk.
Jeg har dog fundet inspiration, men så lige at datoen
er helt gal.

--
Mvh.
Mikael Nørrelund Andersen

Mail adressen virker.


Morten Blinksbjerg N~ (05-08-2003)
Kommentar
Fra : Morten Blinksbjerg N~


Dato : 05-08-03 11:40

> <?PHP
> $update= date('l dS of F Y - H:i:s T',@filectime(str_replace("/", "",
> $_SERVER['PHP_SELF'])));
> echo"Last updated : $update";
> ?>

Nej...

<?php
print "Sidst opdateret: ".date("d.m.Y H.i", filemtime(__FILE__));
?>

Se evt. på http://dk.php.net/date for at formatere datoen.

--
Morten Blinksbjerg Nielsen, Odense
http://www.mbn.dk/ - http://www.websmed.dk/


Thomas More (05-08-2003)
Kommentar
Fra : Thomas More


Dato : 05-08-03 11:45



Før du skriver et så klingende nej kunne du jo kigge på
http://ksn.smsweb.dk/test.php

Der er det lavet på "min" måde, og det virker ret åbentlyst som det skal.

Det kommer lidt an på versionen af PHP hvilken syntax du kan/skal bruge....



"Morten Blinksbjerg Nielsen" <usenet@mbn.dk> wrote in message
news:bgo1hm$251$1@sunsite.dk...
> > <?PHP
> > $update= date('l dS of F Y - H:i:s T',@filectime(str_replace("/", "",
> > $_SERVER['PHP_SELF'])));
> > echo"Last updated : $update";
> > ?>
>
> Nej...
>
> <?php
> print "Sidst opdateret: ".date("d.m.Y H.i", filemtime(__FILE__));
> ?>
>
> Se evt. på http://dk.php.net/date for at formatere datoen.
>
> --
> Morten Blinksbjerg Nielsen, Odense
> http://www.mbn.dk/ - http://www.websmed.dk/
>



Morten Blinksbjerg N~ (05-08-2003)
Kommentar
Fra : Morten Blinksbjerg N~


Dato : 05-08-03 11:50

> Før du skriver et så klingende nej kunne du jo kigge på
> http://ksn.smsweb.dk/test.php
> Der er det lavet på "min" måde, og det virker ret åbentlyst som det skal.

Sikkert, hvorfor virker det så ikke der hvor Mikael har lagt det op?

> Det kommer lidt an på versionen af PHP hvilken syntax du kan/skal bruge....

Nej...

I dit script skriver du:

str_replace("/", "", $_SERVER['PHP_SELF'])

Hvad gør det?

Er det en smart måde at finde stien til filen der skal checkes på?

--
Morten Blinksbjerg Nielsen, Odense
http://www.mbn.dk/ - http://www.websmed.dk/


Thomas More (05-08-2003)
Kommentar
Fra : Thomas More


Dato : 05-08-03 11:55



Det er fordi : $_SERVER['PHP_SELF']

Giver resultatet : /filnavn.php

hvor date statement skal bruge filnavn UDEN "/"

str_replace("/","",VARIABEL) erstatter "/" med "" i variablen, og navnet er
dermed givet korrekt.




"Morten Blinksbjerg Nielsen" <usenet@mbn.dk> wrote in message
news:bgo25h$4q0$1@sunsite.dk...
> > Før du skriver et så klingende nej kunne du jo kigge på
> > http://ksn.smsweb.dk/test.php
> > Der er det lavet på "min" måde, og det virker ret åbentlyst som det
skal.
>
> Sikkert, hvorfor virker det så ikke der hvor Mikael har lagt det op?
>
> > Det kommer lidt an på versionen af PHP hvilken syntax du kan/skal
bruge....
>
> Nej...
>
> I dit script skriver du:
>
> str_replace("/", "", $_SERVER['PHP_SELF'])
>
> Hvad gør det?
>
> Er det en smart måde at finde stien til filen der skal checkes på?
>
> --
> Morten Blinksbjerg Nielsen, Odense
> http://www.mbn.dk/ - http://www.websmed.dk/
>



Johan Holst Nielsen (05-08-2003)
Kommentar
Fra : Johan Holst Nielsen


Dato : 05-08-03 12:02



Thomas More wrote:
> Det er fordi : $_SERVER['PHP_SELF']
>
> Giver resultatet : /filnavn.php
>
> hvor date statement skal bruge filnavn UDEN "/"
>
> str_replace("/","",VARIABEL) erstatter "/" med "" i variablen, og navnet er
> dermed givet korrekt.

Eeeh... og hvad så hvis $_SERVER['PHP_SELF'] returnerer /mappe/fil.php ?
så får du mappefile.php ? Ikke særlig smart...

mvh
Johan


Thomas More (05-08-2003)
Kommentar
Fra : Thomas More


Dato : 05-08-03 12:05


Næh - det er ikke så smart.

Men det gjorde den ikke på det system jeg lige hurtigt testede det på, så
det kan jeg da ikke forestille mig at det gør

Men som jeg tidligere skrev.....der er enkelte forskelle på syntax ved visse
ting, specielt servervariable ved de forskellige PHP versioner, og ved
forskellige settings i php.ini


"Johan Holst Nielsen" <johan@weknowthewayout.com> wrote in message
news:3F2F8EA4.7070403@weknowthewayout.com...
>
>
> Thomas More wrote:
> > Det er fordi : $_SERVER['PHP_SELF']
> >
> > Giver resultatet : /filnavn.php
> >
> > hvor date statement skal bruge filnavn UDEN "/"
> >
> > str_replace("/","",VARIABEL) erstatter "/" med "" i variablen, og navnet
er
> > dermed givet korrekt.
>
> Eeeh... og hvad så hvis $_SERVER['PHP_SELF'] returnerer /mappe/fil.php ?
> så får du mappefile.php ? Ikke særlig smart...
>
> mvh
> Johan
>



Johan Holst Nielsen (05-08-2003)
Kommentar
Fra : Johan Holst Nielsen


Dato : 05-08-03 12:08

Thomas More wrote:
> Næh - det er ikke så smart.

:D

> Men det gjorde den ikke på det system jeg lige hurtigt testede det på, så
> det kan jeg da ikke forestille mig at det gør

Det gør den... smid din phpinfo() fil i en undermappe... så burde den (i
hvert fald på mine systemer) returnere mappen med... ellers er den ikke
til meget brug?

F.eks. ville det være latterligt hvis den returnerede kun filnavnet med
et slash foran... Så er variablen ubrugbar... f.eks. til header location ...

> Men som jeg tidligere skrev.....der er enkelte forskelle på syntax ved visse
> ting, specielt servervariable ved de forskellige PHP versioner, og ved
> forskellige settings i php.ini

Jah... men din str_replace er under ingen omstændigheder optimalt...

mvh
Johan


Thomas More (05-08-2003)
Kommentar
Fra : Thomas More


Dato : 05-08-03 12:16


Kan godt se du har ret.

Grunden til at jeg ikke fik nogen path med, var naturligvis at det var på
selve top (sub) domænet jeg havde placeret filen.

str_replace var også noget jeg hurtigt smed på, da den returnerede den
klassiske 1970 dato, som et ret tydeligt tegn på at den ikke have fundet
filen, så tjekkede jeg hvad den fandt, så den skide slash, og fjernede
den......tænkte ikke på at den slash var komplet relativ url i forhold til
domænet det her tilfælde



"Johan Holst Nielsen" <johan@weknowthewayout.com> wrote in message
news:3F2F9028.5060003@weknowthewayout.com...
> Thomas More wrote:
> > Næh - det er ikke så smart.
>
> :D
>
> > Men det gjorde den ikke på det system jeg lige hurtigt testede det på,

> > det kan jeg da ikke forestille mig at det gør
>
> Det gør den... smid din phpinfo() fil i en undermappe... så burde den (i
> hvert fald på mine systemer) returnere mappen med... ellers er den ikke
> til meget brug?
>
> F.eks. ville det være latterligt hvis den returnerede kun filnavnet med
> et slash foran... Så er variablen ubrugbar... f.eks. til header location
....
>
> > Men som jeg tidligere skrev.....der er enkelte forskelle på syntax ved
visse
> > ting, specielt servervariable ved de forskellige PHP versioner, og ved
> > forskellige settings i php.ini
>
> Jah... men din str_replace er under ingen omstændigheder optimalt...
>
> mvh
> Johan
>



Johan Holst Nielsen (05-08-2003)
Kommentar
Fra : Johan Holst Nielsen


Dato : 05-08-03 12:23



Thomas More wrote:
> Kan godt se du har ret.
>
> Grunden til at jeg ikke fik nogen path med, var naturligvis at det var på
> selve top (sub) domænet jeg havde placeret filen.
>
> str_replace var også noget jeg hurtigt smed på, da den returnerede den
> klassiske 1970 dato, som et ret tydeligt tegn på at den ikke have fundet
> filen, så tjekkede jeg hvad den fandt, så den skide slash, og fjernede
> den......tænkte ikke på at den slash var komplet relativ url i forhold til
> domænet det her tilfælde

En mulighed kunne være:
http://dk.php.net/manual/en/function.pathinfo.php
http://dk.php.net/manual/en/function.realpath.php

Altså...

if(!realpath($_SERVER['PHP_SELF'])) {
$path_arr = pathinfo($_SERVER['PHP_SELF'])
$file = $path_arr['basename'];
}

mvh
JOhan


Johan Holst Nielsen (05-08-2003)
Kommentar
Fra : Johan Holst Nielsen


Dato : 05-08-03 12:24



Johan Holst Nielsen wrote:
>
>
> Thomas More wrote:
>
>> Kan godt se du har ret.
>>
>> Grunden til at jeg ikke fik nogen path med, var naturligvis at det var på
>> selve top (sub) domænet jeg havde placeret filen.
>>
>> str_replace var også noget jeg hurtigt smed på, da den returnerede den
>> klassiske 1970 dato, som et ret tydeligt tegn på at den ikke have fundet
>> filen, så tjekkede jeg hvad den fandt, så den skide slash, og fjernede
>> den......tænkte ikke på at den slash var komplet relativ url i forhold
>> til
>> domænet det her tilfælde
>
>
> En mulighed kunne være:
> http://dk.php.net/manual/en/function.pathinfo.php
> http://dk.php.net/manual/en/function.realpath.php
>
> Altså...
>
> if(!realpath($_SERVER['PHP_SELF'])) {
> $path_arr = pathinfo($_SERVER['PHP_SELF'])
> $file = $path_arr['basename'];
> }

Hvor jeg lige var lidt for hurtig :D Realpath tjekker jo blot på ../ og
ligende... fjern if ;)

mvh
Johan


Mikael Nørrelund And~ (05-08-2003)
Kommentar
Fra : Mikael Nørrelund And~


Dato : 05-08-03 13:05

Thomas More wrote:
> http://ksn.smsweb.dk/test.php

Det virker bare ikke på min server.

> Det kommer lidt an på versionen af PHP hvilken
> syntax du kan/skal bruge....

Kan dette hjælpe?
http://mikael-noerrelund.dk/phpinfo.php

--
Mvh.
Mikael Nørrelund Andersen

Mail adressen virker.


Johan Holst Nielsen (05-08-2003)
Kommentar
Fra : Johan Holst Nielsen


Dato : 05-08-03 13:13



Mikael Nørrelund Andersen wrote:
> Thomas More wrote:
>
>>http://ksn.smsweb.dk/test.php
>
>
> Det virker bare ikke på min server.
>
>
>>Det kommer lidt an på versionen af PHP hvilken
>>syntax du kan/skal bruge....
>
>
> Kan dette hjælpe?
> http://mikael-noerrelund.dk/phpinfo.php


<?PHP
echo "Last update: ".date('l dS of F Y - H:i:s
T',@filemtime($_SERVER['PHP_SELF']));
?>

Burde virke... bemærk filemtime() er den rigtige funktion at bruge og
ikke filectime()...

mvh
Johan


Johan Holst Nielsen (05-08-2003)
Kommentar
Fra : Johan Holst Nielsen


Dato : 05-08-03 13:16



Johan Holst Nielsen wrote:
>
>
> Mikael Nørrelund Andersen wrote:
>
>> Thomas More wrote:
>>
>>> http://ksn.smsweb.dk/test.php
>>
>>
>>
>> Det virker bare ikke på min server.
>>
>>
>>> Det kommer lidt an på versionen af PHP hvilken
>>> syntax du kan/skal bruge....
>>
>>
>>
>> Kan dette hjælpe?
>> http://mikael-noerrelund.dk/phpinfo.php
>
>
>
> <?PHP
> echo "Last update: ".date('l dS of F Y - H:i:s
> T',@filemtime($_SERVER['PHP_SELF']));
> ?>
>
> Burde virke... bemærk filemtime() er den rigtige funktion at bruge og
> ikke filectime()...

Eller endnu nemmere (nu hvor jeg læser hele tråden igennem :D)...

echo "Sidste ændring: ".date("d-m-Y H:i:s",getlastmod());

mvh
Johan


Mikael Nørrelund And~ (05-08-2003)
Kommentar
Fra : Mikael Nørrelund And~


Dato : 05-08-03 14:21

Johan Holst Nielsen wrote:
> echo "Sidste ændring: ".date("d-m-Y H:i:s",getlastmod());


Sådan, lige præcis. Tusind tak Johan.

Først forslag havde dog samme problem, som Thomas'.

--
Mvh.
Mikael Nørrelund Andersen

Mail adressen virker.


Johan Holst Nielsen (05-08-2003)
Kommentar
Fra : Johan Holst Nielsen


Dato : 05-08-03 14:44



Mikael Nørrelund Andersen wrote:
> Johan Holst Nielsen wrote:
>
>>echo "Sidste ændring: ".date("d-m-Y H:i:s",getlastmod());
>
> Sådan, lige præcis. Tusind tak Johan.
>
> Først forslag havde dog samme problem, som Thomas'.

Det var så lidt :)

;) Yep... det var også kun et forslag fordi jeg egentlig ikke havde læst
hele tråden igennem :)

mvh
Johan


Bertel Lund Hansen (05-08-2003)
Kommentar
Fra : Bertel Lund Hansen


Dato : 05-08-03 13:21

Mikael Nørrelund Andersen skrev:

>jeg skal have lavet et script, så der automatisk indsættes
>ind linje med hvornår den enkelte side er opdateret.

Der er kommet en del indviklede svar, og de er muligvis bedre end
mit, men det her er enkelt - kræver blot at alle sider laves
dynamisk af den samme kode. "$content" er den variabel der holder
filnavnet til (indholdet af) de enkelte sider:

I starten findes datoen (format: 5/8-2003)

   $dato=date("j/n-Y.",filemtime($content));

og senere midt i HTML'en indsættes den:

<? print "<TR><TD ALIGN=right>Sidst rettet
$dato &nbsp; &nbsp; </TD></TR>"; ?>

PS. m'et i filemtime er ikke en svipser.

--
Bertel
Min usenetstatistik er på vej tilbage - lidt begrænset i starten.
http://lundhansen.dk/bertel/statistik/usenetstatistik.htm

Mikael Nørrelund And~ (05-08-2003)
Kommentar
Fra : Mikael Nørrelund And~


Dato : 05-08-03 14:23

Bertel Lund Hansen wrote:
> Der er kommet en del indviklede svar, og de er muligvis
> bedre end mit, men det her er enkelt - kræver blot at alle
> sider laves dynamisk af den samme kode.
> "$content" er den variabel der holder filnavnet til (indholdet af)
> de enkelte sider
[snip]

Hej Bertel,

jeg syntes Johans sidste forslag var dejligt nemt og så virker det.
Jeg tilpasser det nok lidt bedre, men det var i hvert fald
præcis det jeg søgte. Så jeg afprøver ikke dit bud, men
rigtig mange tak for din (og alle andres) tid.

--
Mvh.
Mikael Nørrelund Andersen

Mail adressen virker.


Søg
Reklame
Statistik
Spørgsmål : 177502
Tips : 31968
Nyheder : 719565
Indlæg : 6408537
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste