webForumDet fria alternativet

Senast uppdaterad sida

ASP

15 svar · 434 visningar · startad av mattiasnordin

Medlem sedan maj 20012 080 inlägg
Frågan#1

Hej. Finns det någon möjlighet att på en ASP sida ha ett skript som visar när sidan senast var uppdaterad?

Har haft ett javascript som löste detta men det verkar inte fungera på x.asp sidor. Varje gång jag kör reload så uppdateras senast uppdaterad datumet med detta skript.
Exempel på javascript"lösning"...

<script language="JavaScript" type="text/javascript">
<!--
	var a;
	a=new Date(document.lastModified);
	lm_year=a.getYear();
	if (lm_year<1000){ 				//just in case date is delivered with 4 digits
		if (lm_year<70){
		lm_year=2000+lm_year;
		}
		else lm_year=1900+lm_year;
	}								//end workaround
	lm_month=a.getMonth()+1;
	if (lm_month<10){
		lm_month='0'+lm_month;
	}
	lm_day=a.getDate();
	if (lm_day<10){
		lm_day='0'+lm_day;
	}
	lm_hour=a.getHours();
	if (lm_hour<10){
		lm_hour='0'+lm_hour;
	}
	lm_minute=a.getMinutes();
	if (lm_minute<10){
		lm_minute='0'+lm_minute;
	}
	lm_second=a.getSeconds();
		if (lm_second<10){
		lm_second='0'+lm_second;
	}
	document.write("Last Modified " + lm_year+'-'+lm_month+'-'+lm_day+' '+lm_hour+':'+lm_minute+':'+lm_second);
// -->
</script>

Går det att på något sätt visa ett datum för när innehållet uppdaterades?

------------------
http://www.absolut.nu

Medlem sedan feb. 20012 412 inlägg
#2

Hej du kan använda FSO och funktionen ShowFileAccessInfo och DateLastModified.

mvh Jörgen :)

------------------
.: Det är jag som ger svaren och det är Ni som ställer frågorna :.

[Redigerat av jorgen den 03 jan 2002]

Medlem sedan maj 20012 080 inlägg
#3

Tack för svaret. Finns det något ställe jag kan läsa mer om detta. Är nybörjare på VBscript. Eller har du ett exempel? :OO

------------------
http://www.absolut.nu

Medlem sedan feb. 20012 412 inlägg
#4

Hej, här har du exempel samt förklaring:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbenlr98/html/vaprodatelastmodified.asp

mvh Jörgen :)

------------------
.: Det är jag som ger svaren och det är Ni som ställer frågorna :.

Medlem sedan maj 20012 080 inlägg
#5

Fantastiskt bra sida!
Bör läsa lite mer för att förstå grunderna. Hur anropar man en sub i VBskript?

Min asp fil heter start_menu.asp och det är den som jag vill ha reda på när den senast var modifierad.

Sub ShowFileAccessInfo(filespec)
    Dim fs, f, s
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set f = fs.GetFile(filespec)
    s = UCase(filespec) & vbCrLf
    s = s & "Created: " & f.DateCreated & vbCrLf
    s = s & "Last Accessed: " & f.DateLastAccessed & vbCrLf
    s = s & "Last Modified: " & f.DateLastModified  
    MsgBox s, 0, "File Access Info"
End Sub

Fråga 2.
Har du någon bra bok att rekommendera inom området VBskript? Har precis lärt mig javascript och tänkte gå vidare till VBskript.

------------------
http://www.absolut.nu

Medlem sedan feb. 20012 412 inlägg
#6
  1. Call ShowFileAccessInfo(filespec)

  2. ASP 3.0 for proffessional. Finns en beginner variant med. Förlaget heter wrox.

mvh Jörgen :)

------------------
.: Det är jag som ger svaren och det är Ni som ställer frågorna :.

Medlem sedan maj 20012 080 inlägg
#7

Jag får det inte att fungera. Misstänker att det ska se ut så här:

<%
Sub ShowFileAccessInfo(filespec)
Dim fs, f, s
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFile(filespec)
s = UCase(filespec) & vbCrLf
s = s & "Created: " & f.DateCreated & vbCrLf
s = s & "Last Accessed: " & f.DateLastAccessed & vbCrLf
s = s & "Last Modified: " & f.DateLastModified 
MsgBox s, 0, "File Access Info"
End Sub

call ShowFileAccessInfo(start_menu.asp)
%>

Kör jag ovan händer inte något. Vad frustrerande det är att vara så här dålig för detta är precis den funktion jag behöver på min sida.

------------------
http://www.absolut.nu

Medlem sedan dec. 2000399 inlägg
#8

Hej

Prova detta istället:

<%
Sub ShowFileAccessInfo(filespec)
Dim fs, f, s
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFile(filespec)
s = UCase(filespec) & vbCrLf
s = s & "Created: " & f.DateCreated & vbCrLf
s = s & "Last Accessed: " & f.DateLastAccessed & vbCrLf
s = s & "Last Modified: " & f.DateLastModified 
Response.Write "File Access Info:" & s
End Sub
call ShowFileAccessInfo(start_menu.asp)
%>

------------------
mvh André

[Redigerat av juventus1 den 03 jan 2002]

Medlem sedan nov. 2001294 inlägg
#9

juventus, jag får inte ditt skript att funka. jag får felmeddelandet:

Körningsfel i Microsoft VBScript fel '800a01a8'

Objekt krävs.: ''

/default.asp, rad 104

rad 104: call ShowFileAccessInfo(default.asp)

Är det någon fuktion jag inte har (PWS) eller är det något annat som gör att jag inte får det att fungera??

tack på förhand...

Medlem sedan dec. 2000399 inlägg
#10

Nej jag missade en liten men viktigt detalj:

<%
Sub ShowFileAccessInfo(filespec)
Dim fs, f, s
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFile(filespec)
s = UCase(filespec) & vbCrLf
s = s & "Created: " & f.DateCreated & vbCrLf
s = s & "Last Accessed: " & f.DateLastAccessed & vbCrLf
s = s & "Last Modified: " & f.DateLastModified 
Response.Write "File Access Info:" & s
End Sub
[b]call ShowFileAccessInfo("default.asp")[/b]
%>

Utan "" tror den att default är ett objekt, vilket det inte är...

------------------
mvh André

Medlem sedan nov. 2001294 inlägg
#11

funkar inte nu heller....

Körningsfel i Microsoft VBScript fel '800a0035'

Det går inte att hitta filen.

/default.asp, rad 97

rad 97: Set f = fs.GetFile(filespec)

måste jag fylla i något i den raden eller?? (har testat med annat filnamn, så det är inte default det beror på...)

tack på förhand...

Medlem sedan maj 20012 080 inlägg
#12

Jag får samma fel som dig I-or.

Microsoft VBScript runtime error '800a0035' 

File not found 

/start_menu.asp, line 21

LINE 21 =
Set f = fs.GetFile(filespec)

Är det någon som vet vad vi gör för fel?

------------------
http://www.absolut.nu

Medlem sedan maj 20012 080 inlägg
#13

Kan någon bekräfta att juventus1
skript fungerar? I så fall kanske det är min IIS som bråkar???

------------------
http://www.absolut.nu

Medlem sedan maj 20012 080 inlägg
#14

Jag är igentligen halvt värdelös på VBscript men det verkar som att jag har hittat en lösning:

<%
Dim fs, f, s
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFile (Server.MapPath ("/") + "\start_menu.asp")
s = "<br>Created: " & f.DateCreated
s = s & "<br>Last Accessed: " & f.DateLastAccessed
s = s & "<br>Last Modified: " & f.DateLastModified 
Response.Write "File Access Info:<br>" & s &"<p>"
%>

Denna fungerar för mig. Kan inte någon kunnig skriva om subben ovan så att den fungerar för den är snyggare.

Skriptet ovan genererar följande:

File Access Info:

Created: 2001-11-08 18:54:57
Last Accessed: 2002-01-04 11:06:13
Last Modified: 2002-01-04 11:06:13

Är det någon som vet vad det är för skillnad på Last Accessed och Last Modified? Dessa datum verkar vara samma hur jag än vrider och vänder på det hela? Hjjäääälpp... ;)

------------------
http://www.absolut.nu

[Redigerat av mattiasnordin den 04 jan 2002]

Medlem sedan nov. 2001294 inlägg
#15

Tack mattias,

Vad är det för fördel med att ha subben egentligen? Det funkade ju onekligen bra utan.

Stämmer det att javaskripten för LastModified aldrig funkar på asp-sidor? Med den här lösningen med asp, får man ju serverns tid. Kan man inte få klientens tid på något sätt?

tack på förhand

Medlem sedan maj 20012 080 inlägg
#16

Nu har jag fått skriptet att bli lite mer dynamiskt. Rätt nöjd med funktionen nu. Ska bara se till att det blir grafiskt snyggt också...

Min tanke med detta var att ha ett färdigt skript som är lätt att köra copy n paste till olika sidor utan att behöva ändra koden för att det ska fungera. Detta fungerar utmärkt för mig!

<!--- Tar reda på denna sidas filnamn --->
<%
' --- Läser in denna sidas filnamn ---
	MyPathNfile = Request.ServerVariables("SCRIPT_NAME")
	MyPos = InStrRev(MyPathNfile, "/")
	MyLen = len (MyPathNfile)
	CutHere = MyLen - MyPos ' Längden på hela fil&sökvägen - Längden till sista "/"
	MyThisFilename = Right(MyPathNfile, CutHere)
			
' --- Skapar en textfil (räknare) i webrooten med samma namn som asp sidan ---
	On Error Resume Next
	NumberOfVisitors = 1
	Set FileObject = Server.CreateObject("Scripting.FileSystemObject")
	Set File = FileObject.OpenTextFile (Server.MapPath ("/") + "\counter-(" &MyThisFilename &")", 1, True)
	NumberOfVisitors = CInt(File.ReadLine) + 1
	File.Close
	Set File = FileObject.OpenTextFile (Server.MapPath ("/") + "\counter-(" &MyThisFilename &")", 2, True)
	File.Write NumberOfVisitors
	File.Close
	Set File = Nothing
	Set FileObject = Nothing
			
' --- Visar när asp filen senast var ändrad ---
	Dim fs, f, s
	Set fs = CreateObject("Scripting.FileSystemObject")
	Set f = fs.GetFile (Server.MapPath ("/") + MyPathNfile)
	s = "<br>Created: " & f.DateCreated 
	s = s & "<br>Last Accessed: " & f.DateLastAccessed 
	s = s & "<br>Last Modified: " & f.DateLastModified 
	Response.Write "File Access Info:<br>" & s &"<br>"
%>
Total reloads=<% = NumberOfVisitors %> <p>

------------------
http://www.absolut.nu

[Redigerat av mattiasnordin den 04 jan 2002]

[Redigerat av mattiasnordin den 04 jan 2002]

266 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
138 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)