webForumDet fria alternativet

Rösta 1 gång.. Cookies

ASP

6 svar · 227 visningar · startad av sin_adec

Medlem sedan apr. 2002272 inlägg
Frågan#1

Tjenare alla webb-utvecklar, behöver nämnligen hjälp att utveckla min kod mer.. jag vill nämnligen att man ska endast kunna rösta en medlem en gång inte fler..


<% response.buffer ="true" %>
<!-- #include file="adovbs.inc" --><%Dim Con
Set Con = Server.CreateObject("ADODB.Connection")
Con.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("xxx.mdb") &";pwd=xxx"

Set RecSet = Server.CreateObject("ADODB.Recordset")

Addera = "Select * From medlemmar where id=" & request.querystring("id") & " "
RecSet.Open Addera, Con, adOpenStatic, adLockOptimistic

total = request.querystring("summa")

Recset("antal_vote") = Recset("antal_vote") +1
Recset("points") = Recset("points") +request.querystring("points")
Recset("total") = total

RecSet.Update
RecSet.Close
Con.close
Set RecSet = nothing
Set Con = nothing

response.redirect "default.asp"
%><p>&nbsp;</p>
Medlem sedan jan. 20022 440 inlägg
#2

Ojojoj jag sitter och tittar på din kod och kom på så mycket förbättringar jag skulle vilja göra att jag helt kom av mig.

Du får nog specificera frågan lite bättre om du vill ha hjälp.

Medlem sedan dec. 20002 526 inlägg
#3

Detta kanske?

<%Dim Con
Set Con = Server.CreateObject("ADODB.Connection")
Con.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("xxx.mdb") &";pwd=xxx"
Dim Pnt, total, sql
Pnt = request.querystring("points")
total = request.querystring("summa")
sql = "Update medlemmar SET antal_vote = antal_vote +1, points = points + pnt, total = total where id=" & request.querystring("id") 
Con.execute sql,,128

'Satter expires till nasta dag.
'Du kollar kakan om personen har rostat med ex:
'If Request.Cookies("vote") = "Ja" then
'response.write "Du har redan rostat idag, vanta tills imorn!"
'else
Response.Cookies("vote") = "Ja"
Response.Cookies("vote").Expires = dateAdd("d",1,now()) 
'End IF
Con.close
Set Con = nothing
response.redirect "default.asp"
%><p> </p>
Medlem sedan apr. 2002272 inlägg
#4

jag vill liksom, om man redan har röstat på en medlem så ska man inte kunna göra det... alltså inte ge några poäng..

Medlem sedan dec. 20002 526 inlägg
#5

Ja, det ligger ju dar!!!
If request.cookies("vote") = "Ja" then
response.write "Du har redan rostat...."
else
'lat rostningen ga igenom!

Medlem sedan apr. 2002272 inlägg
#6

Inget som vet..

Medlem sedan dec. 20003 563 inlägg
#7

Gör en tabell med 2 kolumner.
col_uservotingon | col_uservotedat

I den första kolumnen sätter du ID på den som röstade, och i den andra kolumnen sätter du ID på den som han röstade på.

sen innan varje röstning sker så kollar du

SQL = "SELECT count(*) as antal FROM tbl_voters WHERE uservotingon = "& han_som_röstars_id &" AND uservotedat ="& han_som_blir_röstad_på &""
rs = conn.execute(SQL)

if Rs("antal") = "0" then
' Klart du får rösta på den här liraren
else
' Men inte igen!
end if
271 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
131 ms — deklarationer (db)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)