plussa +1

ASP

35 svar · 316 visningar · startad av hacktheplanet

Medlem sedan nov. 2001263 inlägg
Trådstart#1

Hur gör jag så att det inte plussas på 1 poäng om medlemen har redan loggat in?? Men han kan få +1 nästa dag.

strSQL="UPDATE members SET poang = poang + 1 WHERE ID = " & RecSet("id")
Medlem sedan apr. 20012 427 inlägg
#2

Kan du inte ha en kolumn där du lägger datumet då han senast fick en poäng. Om det datumet stämmer med den aktuella dagen får han ingen poäng. Bara en tanke, det finns säkert en smidigare metod.

Medlem sedan dec. 200012 464 inlägg
#3

Välkommen till WF

Du behöver en datumkolumn i tabellen som visar när senaste uppdateringen gjordes.

Datum hanteras ju lite olika i olika databaser, så här kan du göra i Access till exempel.

strsql = "update members set poang = poang + 1, uDatum = now() " & _
" where datediff('d',uDatum,now()) <> 0 and id = " recset("ID")
connect.execute strsql,,128
Medlem sedan nov. 2001263 inlägg
#4

tackar :-)

Medlem sedan nov. 2001263 inlägg
#5

kan man inte använda senaste inloggad istället ????

Medlem sedan dec. 200012 464 inlägg
#6

Vad menar du med senastinloggad?

Är det något som du sparar i en cookie?

I så fall går det ju bra att använda datediff för att se om användaren har varit där samma dag.

if datediff("d",request.&#67ookies("senastinloggad",date) <> 0 then
'utför update 
'tilldela cookie nytt värde
Medlem sedan nov. 2001263 inlägg
#7

funkar ej

" where datediff('d',Datum,now()) <> 0 and id = " RecSet("id")
-------------------------------------------------^

Medlem sedan nov. 2001263 inlägg
#8

nope går bra med datum

Medlem sedan nov. 2001263 inlägg
#9

satte in & men +1 endå

Medlem sedan dec. 200012 464 inlägg
#10

Nu förstår jag inte vad du menar. Får du något felmeddelande?

Medlem sedan nov. 2001263 inlägg
#11

nope men det plussas forfarande om man loggat in engång

Medlem sedan nov. 2001263 inlägg
#12

får inget felmeddelande ingenting händer

Medlem sedan nov. 2001263 inlägg
#13

datum fältet i databasen ändras när man loggar in är det den man ska koppla till????

strsql = "update members set poang = poang + 1, Datum = now() " & _ 
		" where datediff('d',Datum,now()) <> 0 and id = " & RecSet("id")
		connect.execute strsql,,128
Medlem sedan dec. 200012 464 inlägg
#14

Då jag inte vet hur dina tabeller ser ut och vad du gör annars på sidan så begriper jag inte vad du menar när du säger senastinloggad. Du får förklara lite mer ingående och inte vara så kortfattad.

Hur använder du kolumnen datum annars?

Medlem sedan nov. 2001263 inlägg
#15

jag har en tabell där den uppdateras som senaste inloggad asså användaren

Medlem sedan nov. 2001263 inlägg
#16

så här ser login_check.asp

RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic

Do Until RecSet.EOF

if lcase(recset("username")) = lcase(request.form("username")) and lcase(recset("losen")) = lcase(request.form("losen")) then
	
		RecSet("datum") = Now
		RecSet("status") = "online"
		
		RecSet.Update
		
		Session("namn") = RecSet("fnamn") & " " & RecSet("enamn")
		Session("fnamn") = RecSet("fnamn")
		Session("enamn") = RecSet("enamn")
		Session("Username") = RecSet("Username")
		Session("login") = "ok"
		Session("id") = RecSet("id")
		Session("status") = "online"
		Session("epost") = RecSet("epost")
		
		Session.TimeOut = 40
		
		
		strsql = "update members set poang = poang + 1, Datum = now() " & _ 
		" where datediff('d',Datum,now()) <> 0 and id = " & RecSet("id")
		connect.execute strsql,,128

		strSQL="UPDATE members SET loggatin = loggatin + 1 WHERE ID = " & RecSet("id")
		Connect.execute (strSQL)
		
		
		RecSet.Close
		Connect.Close
		Set RecSet = nothing
		Set Connect = nothing
		
			
		
		Response.Redirect "defaultx.asp"

	End If
Medlem sedan aug. 20011 099 inlägg
#17

LarsG snälla :-(

Medlem sedan nov. 2001263 inlägg
#18

ja kom igen LarsG

Medlem sedan okt. 20005 273 inlägg
#19
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic

Do Until RecSet.EOF

if lcase(recset("username")) = lcase(request.form("username")) and lcase(recset("losen")) = lcase(request.form("losen")) then
	
		RecSet("datum") = Now
		RecSet("status") = "online"
		
		RecSet.Update
		
		Session("namn") = RecSet("fnamn") & " " & RecSet("enamn")
		Session("fnamn") = RecSet("fnamn")
		Session("enamn") = RecSet("enamn")
		Session("Username") = RecSet("Username")
		Session("login") = "ok"
		Session("id") = RecSet("id")
		Session("status") = "online"
		Session("epost") = RecSet("epost")
		
		Session.TimeOut = 40
		
		
		strsql = "update members set poang = poang + 1, Datum = now() " & _ 
		" where datediff('d',Datum,now()) <> 0 and id = " & [b]Session("id")[/b]
		connect.execute strsql,,128

		strSQL="UPDATE members SET loggatin = loggatin + 1 WHERE ID = " & [b]Session("id")[/b]
		Connect.execute (strSQL)
		
		
		RecSet.Close
		Connect.Close
		Set RecSet = nothing
		Set Connect = nothing
		
			
		
		Response.Redirect "defaultx.asp"

	End If

tycker detta ser allmänt snurrigt ut men ni kan ju testa så där ;)

Medlem sedan nov. 2001263 inlägg
#20

nope funkar ej

255 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
117 ms — ändringar (db)