update 1 gång!?

ASP

15 svar · 296 visningar · startad av crisse6

Medlem sedan dec. 20002 526 inlägg
Trådstart#1

hur gör man så att en sida uppdateras bara EN gång... har nämligen en inloggningsida.. när man kommer in läggs +1 på i db:n.
Problem: Man kan återvända till den sida vilket leder till en ny uppdatering = inte bra, inte rätt resultat!?

hjälp!

Medlem sedan jan. 20013 406 inlägg
#2

Du vill alltså göra någon slags statistik funktion för unika träffar.

Jag skulle använda mig av en cookie
som lagrar ett värde. När han sedan besöker sajten nästa gång så känner sidan av att personen varit där en gång tidigare.

Medlem sedan dec. 20002 526 inlägg
#3

hmm...har aldrig skapat en cookie... hur gör man det?

Medlem sedan maj 200010 687 inlägg
#4

Skriva:
Response.Coookies("namn")=värde

Läsa:
Request.Coookies("namn")

När man skriver kan det även vara vettigt att ha med:
Response.Coookies("namn").Expires="31 December, 2001"

Cookies skrivs med två o, men forumet verkar ha någon spärr mot att skriva .Coo.. :)

Medlem sedan dec. 20002 526 inlägg
#5

okej...men hur ska jag lägga koden... och vart lägger man update satsen..? förklara mer

Medlem sedan dec. 19998 577 inlägg
#6

Erik,

Man får använda första bokstavens decimalnummer...
C = 67 = C

Cookies :)

Andra tecken: http://www.webeye.nu/default2.asp?que=asp/default.asp&exec=asp/ISO-8859-1.asp

Medlem sedan maj 200010 687 inlägg
#7

Något sånt här kan du ju skriva:

If Request.&#67;ookies("Counter") <> "beenhere" Then
'Koden som uppdaterar databasen.
Response.&#67;ookies("Counter") = "beenhere"
End If
Medlem sedan dec. 20002 526 inlägg
#8

hmmm varför vill den inte skriva cookiesen...??? vill också veta om det går att göra så att om man inte besökt den sidan som den här lilla kodsnutten ligger på ca 5 timmar så får den updatera igen... men inte om besöket på den sidan va för 1 timma sen eller 3 timmar sen osv...

<%
If Request.Coookies("Counter") <> "beenhere" Then
sql4 = "update users set antalBesok = antalBesok + 1 where id = " & session("id")
Databas4.Execute(SQL4)
else
Response.Coookies("Counter") = "beenhere"
End If
%>

anledning till att det är 3 st ord i coookies är för man inte fick skriva med två st "o" :(

Medlem sedan dec. 20002 526 inlägg
#9

hallå? jag behöver snabb hjälp!

Medlem sedan juni 200152 inlägg
#10

hmm om jag inte har fel så har jag för mig att man använder kakor enligt följande:

response.coookies("namn").Expires=datum 'hur länge kakan gäller
response.coookies("namn")("variabel")="värde" 'tilldelar en varibel i kakan ett värde

request.coookies("namn")("variabel") 'hämtar värdet

ville bara påpeka att om användaren har cookies avslaget så kommer räknaren räkna ett besök varje gång han laddar om sidan

Medlem sedan dec. 20002 526 inlägg
#11

okej, men jag fattar inte ändå. Hur ska jag lägga datum så det är så att coookiesen går ut dagens datum, hur lägger jag update satsen...?

Medlem sedan juni 200152 inlägg
#12

för att få cookie'n att gå ut idag typ 1 timme framåt eller nåt:

response.coookies("namn").Expires=now+(1/24)

om du plussar på ett tal på ett datum så räknas det i dygn...och 1 timme motsvarar 1/24 dygn.....

update-satsen är bara o lägga i en if-sats som du hade gjort tidigare...

Medlem sedan dec. 20002 526 inlägg
#13

hallå!

skulle ngn vilja hjälpa mig med att få min If-sats att funka... jag vet ej hur jag ska göra den...

vill alltså att den sätter en coookie när man loggar in på start.asp, sedan om man återvänder till start.asp när man fortfarande är inloggad så ska den INTE uppdatera db:n... ? för att den ska uppdatera db:n nästa gång ska det ha gått 4 h..

Medlem sedan dec. 200012 464 inlägg
#14

Kan du inte lagra tiden för besöket istället och jämföra.

<%
If datediff("h",cdate(Request.&#67ookies("Visited")),now()) > 4 Then
sql4 = "update users set antalBesok = antalBesok + 1 where id = " & session("id")
Databas4.Execute(SQL4)
else
Response.&#67ookies("Visited") = now()
End If
%>

Tror bara att du kan sätta expiration till ett datum.

Medlem sedan dec. 20002 526 inlägg
#15

tack LarsG, men jag tror jag löste det innan... jag la updaten i login.asp där man efter kollen av username och password skickas vidare till start.asp, login.asp kommer du ju aldrig till om du inte loggar in igen... ;e

Medlem sedan dec. 20002 526 inlägg
#16

tack LarsG, men jag tror jag löste det innan... jag la updaten i login.asp där man efter kollen av username och password skickas vidare till start.asp, login.asp kommer du ju aldrig till om du inte loggar in igen... ;)

300 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
167 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)