Okey, redigerar hela detta inlagg, for nu har jag testat mig fram och far ej ordning pa det... :(
Har en kod som skriver cookie om den cookiesen ar tom, om inte sa jamfor den med senaste posten som skickades in. Sen pa dom andra sidorna, read.asp sa skrivs det ny data till kakan sa den uppdateras, samt nar man skapar en helt ny trad eller svarar... Men dom verkar inte vilja jamfora som jag vill, hehe! Ta en titt:
kaka = Request.Cookies("latest")
Datum = rs("f_latest")
Datumet = Now()
'skriver bara ut detta for egen koll
response.write "Kakan: "
response.write kaka
response.write "<br>Dagens datum: "
response.write Datumet
response.write "<br>Senaste inlagget: "
response.write rs("f_latest")
If kaka = "" then
Response.Cookies("latest") = Datum
Response.Cookies("latest").Expires = Datumet +1
End if
If kaka => Datum then
bild = "<img src=""http://194.236.130.43/chris/forumet/old.gif"">"
elseif kaka =< Datum then
bild = "<img src=""http://194.236.130.43/chris/forumet/new.gif"">"
elseif kaka <> Datum then
bild = "<img src=""http://194.236.130.43/chris/forumet/new.gif"">"
End if
Kanske vore på sin plats med funktionen datevalue() när man jämför datum?a
kaka = Request.Cookies("latest")
Datum = rs("f_latest")
Datumet = Now()
'skriver bara ut detta for egen koll
response.write "Kakan: "
response.write kaka
response.write "<br>Dagens datum: "
response.write Datumet
response.write "<br>Senaste inlagget: "
response.write rs("f_latest")
If kaka = "" then
Response.Cookies("latest") = Datum
Response.Cookies("latest").Expires = Datumet +1
End if
[red]
If datevalue(kaka) => datevalue(Datum) then
bild = "<img src=""http://194.236.130.43/chris/forumet/old.gif"">"
elseif datevalue(kaka) =< datevalue(Datum) then
bild = "<img src=""http://194.236.130.43/chris/forumet/new.gif"">"
elseif datevalue(kaka) <> datevalue(Datum) then
bild = "<img src=""http://194.236.130.43/chris/forumet/new.gif"">"
End if[/red]
datevalue() är inte samma sak, nej. Även om den verkar göra samma sak.
cDate() är en funktion för att returnera en variant av subtypen Date. Alltdå, en variant av Datumformatet, i ASP-sammanhang; konvertera till datum.
dateValue() är en funktion som också returnerar en variant av Date, men den kan dock skilja vissa mönster, mer än cDate() kan.
DateValue also recognizes unambiguous dates that contain month names, either in long or abbreviated form. For example, in addition to recognizing 12/30/1991 and 12/30/91, DateValue also recognizes December 30, 1991 and Dec 30, 1991.
Om datumet som körs genom datevalue() innehåller tid, returneras inget. Om tiden är felaktig; t.ex. 89:87, kommer ett felmeddelande.
If datevalue(kaka) => datevalue(Datum) then
bild = "<img src=""http://194.236.130.43/chris/forumet/old.gif"">"
elseif datevalue(kaka) =< datevalue(Datum) then
bild = "<img src=""http://194.236.130.43/chris/forumet/new.gif"">"
elseif datevalue(kaka) <> datevalue(Datum) then
bild = "<img src=""http://194.236.130.43/chris/forumet/new.gif"">"
End if
den funkar inte, far: Inkompatibla typer: 'datevalue'
verkar inte gora nagon skillnad med Overrides kod, visar inte ny bild om det ar nytt inlagg, aven om kakan och rs("f_latest") inte ar samma datum.... aaah! Sant har gor mig tokig!!
en cookie sparas pa anvandarens dator om den inte finns, och da med vardet som ligger i rs("f_latest"). Sen om du skapar nytt inlagg/trad sa uppdateras cookien med Now(), dvs samma datum som fors in i databasen, rs("f_latest").
Sedan om du laser en trad som ar nytt sedan ditt senaste besok sa uppdateras cookiesen med Now() for att inte visa "nytt-inlagg-bilden".
Detta fungerar - nastan. Den vill inte visa korrekt bild pa default.asp om det finns nya inlagg, dvs den jamfor med cookiesens varde mot rs("f_latest"). Nar jag skriver ut cookiesen och rs("f_latest") blir vardet sa har (te x):
Kakan: 2002-11-23 22:23:08
Senaste inlagget: 2002-11-23 22:22:12
Kakan ar alltsa nyare an senaste inlagget vilket gor att den ska visa old.gif bilden - och det gor den, men postar man nytt inlagg sa blir det anda samma old.gif istallet for new.gif. Varfor? Vilka sidor ska uppdatera cookiesen? Hur gor man for att den ska bara uppdatera den traden, istallet for alla?
Kolla koden som ska skilja pa bilderna:
kaka = Request.Cookies("latest")
Datum = rs("f_latest")
If Datum = kaka then
bild = "<img src=""http://194.236.130.43/chris/forumet/old.gif"">"
elseif Datum > kaka then
bild = "<img src=""http://194.236.130.43/chris/forumet/new.gif"">"
elseif Datum < kaka then
bild = "<img src=""http://194.236.130.43/chris/forumet/old.gif"">"
End if
langt men mycket beskrivet, hoppas ni hanger med :)
Skulle inte något likt detta fungera?
(Ev. får du vända på jämförelsen.)
kaka = Request.Cookies("latest")
Datum = rs("f_latest")
differens = datediff("n",Datum,kaka)
If differens > 0 then
bild = "<img src=""http://194.236.130.43/chris/forumet/new.gif"">"
else
bild = "<img src=""http://194.236.130.43/chris/forumet/old.gif"">"
End if
Hur gor jag sedan for att nar den listar tradarna att bara uppdatera just den traden som "last"...??? Vill ju liksom inte uppdatera alla tradar som lasta da man bara laser en trad :)
ingen som har en aning???? ar det typ nagot annat som ska laggas in i cookien typ som forumID och tradID, och sen pa nagot satt kolla vilket forum den tillhor???? Pa sidan som visar om det ar nya inlagg i hela ASP forumet te x da ar det ju bara forumID som den ska kolla eller? Och sen val inne i forumet ASP, sa ska den uppdatera bara tradID?! Nagot forslag?