Prova att göra en typkonvertering på cookiedatumvärdet:
if Cdate(request.cookies("rainbow")) =< date then
Välkommen till webForum dessutom! :)
Mvh,
27 svar · 552 visningar · startad av LR^evil.sid
skulle göra en besöksräknare men den vill inte räkna upp när jag går till sidan, inte när några andra av mina polare gör det heller.
[red]if request.servervariables("local_addr") = "127.0.0.1" or request.servervariables("local_addr") = "192.168.0.1" then
else
if request.cookies("rainbow") =< date then
if session("once") = false then
session("once") = true
dim physicalFile, AspObj, objectFile, visits
physicalFile = Server.MapPath("\") & "\visits.log"
Set AspObj = Server.CreateObject("Scripting.FileSystemObject")
Set objectFile = AspObj.OpenTextFile(physicalFile,1,true)
visits = objectFile.readline
physicalFile = Server.MapPath("\") & "\visits.log"
Set AspObj = Server.CreateObject("Scripting.FileSystemObject")
Set objectFile = AspObj.OpenTextFile(physicalFile,2,true)
visits = visits + 1
objectFile.writeline visits
objectFile.close
set AspObj = nothing
set objectFile = nothing
physicalFile = ""
visits = ""
end if
response.cookies("rainbow") = date
response.cookies("rainbow").expires = dateadd("d",1,date)
else
response.cookies("rainbow") = date
response.cookies("rainbow").expires = dateadd("d",1,date)
end if
end if[/red]
Prova att göra en typkonvertering på cookiedatumvärdet:
if Cdate(request.cookies("rainbow")) =< date then
Välkommen till webForum dessutom! :)
Mvh,
Då verkar det som om cookievärdet inte är ett giltigt datum. Hur ser cookievärdet ut?
response.write request.cookies("rainbow")
i övrigt ser det inte ut att vara fel på koden nånstans eller?
request.cookies("sak")("undersak") testa
vad skulle det vara för "undersak" då?
Om du byter
if request.cookies("rainbow") =< date then
till
if request.cookies("rainbow") <= date then
?
det funkar inte. den räknar inte upp.
kände att det kanske är nödvändigt att berätta att jag tar bort cookien som finns innan jag börjar testa. sedan testar jag sidan igen. stänger browsern. sedan testar jag igen och den räknar inte upp.
ingen som har nån idé?
Har du med typkonverteringen i jämförelsen när du provar LarsGs förslag?
Type mismatch: 'cdate'
Detta är märkligt. Enligt den testutskrift du gjorde tidigare så verkar det ju helt klart vara ett giltigt datum som finns i cookien.
Hur ser koden ut när du har med typkonverteringen?
Om du kör följande, vad får du då för resultat?
response.write isDate(request.cookies("rainbow"))
Mvh,
så här ser koden ut nu... inte mycket ändringar.
[red]
<%
if request.servervariables("local_addr") = "127.0.0.1" or request.servervariables("local_addr") = "192.168.0.1" then
else
if cdate(request.cookies("rainbow")) <= date then
if session("once") = false then
session("once") = true
dim physicalFile, AspObj, objectFile, visits
physicalFile = Server.MapPath("\") & "\visits.log"
Set AspObj = Server.CreateObject("Scripting.FileSystemObject")
Set objectFile = AspObj.OpenTextFile(physicalFile,1,true)
visits = objectFile.readline
physicalFile = Server.MapPath("\") & "\visits.log"
Set AspObj = Server.CreateObject("Scripting.FileSystemObject")
Set objectFile = AspObj.OpenTextFile(physicalFile,2,true)
visits = visits + 1
objectFile.writeline visits
objectFile.close
set AspObj = nothing
set objectFile = nothing
physicalFile = ""
visits = ""
end if
response.cookies("rainbow") = date
response.cookies("rainbow").expires = dateadd("d",1,date)
else
response.cookies("rainbow") = date
response.cookies("rainbow").expires = dateadd("d",1,date)
end if
end if
%>[/red]
isDate ger True
borde koden inte fungera?
Jo, jag har stirrat mig blind på din kod, och kan inte förstå varför den inte fungerar.
Eftersom IsDate() skriker true, så kan du ju rimligtvis inte få en type mismatch när du försöker göra en subtypskonvertering...
*kliar sig i huvet*
det här är de enda koden innan include-filen
[red]<% @language=vbscript %>
<% option explicit %>
<% response.buffer = true %>
<% dim x %>
<!-- #include file='visits.inc' -->[/red]
koden jag publicerdade tidigare ligger i include-filen.
Om du plockar bort den yttre if-satsen (som kollar ip-adress), och kör includefilen för sig själv?
fortfarande type mismatch
--
en tanke är att jag struntar i att knacka den här själv om någon vet ett script som räknar besök med kriteriet att de får besöka sidan hur många gånger som hellst men räknaren räknar dem bara som 1 besökare per dag.