webForumDet fria alternativet

Klicka en gång!

ASP

11 svar · 346 visningar · startad av eko

Medlem sedan juni 2002198 inlägg
Frågan#1

Hej,

Jag undrar hur man gör så att besökaren på sidan bara ska kunna klicka en gång på en viss länk? Det är ett röstningssystem jag håller på med och man ska bara kunna röst en gång!

Nån som vet?? mvh / eko

Medlem sedan nov. 20017 144 inlägg
#2

Välkommen till WF
Det går att göra på flera sätt, ett är att sätta en kaka(cookie) som talar om att man har tryckt på länken, en annan är att spara te.x. ip-adressen i en databas. Eller kanske enklast att göra det i javascript, det beror lite på var du har länken o.s.v.
Beskriv lite mera hur du hade tänkt dig.

Medlem sedan juni 2002198 inlägg
#3

Ja länkarna ser ut såhär:

<a href="vote.asp?id=1">covergirl</a>
<a href="vote.asp?id=2">stranded love</a>

osv... det är nio stycken!

Jag tror att ett litet javascript hadde varit perfekt för att hindra att man klickar 2 ggr, Jag har sökt som tusan på google men hittar inget script! Nån som vet nåt?

Tack mvh / eko

Medlem sedan nov. 20017 144 inlägg
#4

Titta lite på denna kanske:
http://www.webforum.nu/showthread.php?s=&postid=503303#post503303

Medlem sedan juni 2002198 inlägg
#5

tack för svaren, jag har testat lite med den koden! Fast jag får det inte riktigt att funka! Jag har ju inga knappar utan mina länkar ligger ju i text!

Det bästa vore om man försöker rösta 2ggr så skickas man till en annan sida typ voted.asp! + att cookie`n satt i för alltid istället för 60 sek som det var i det scriptet!

Medlem sedan mars 20015 287 inlägg
#6

Du kan ju helt enkelt låta bli att skriva ut länkarna om cookisen finns.

Medlem sedan nov. 20017 144 inlägg
#7

Nåt sånt här kanske:

<% Dim lankar
lankar=array("covergirl","stranded love","trean","fyran","femman","sexan","sjuan","åttan","nian")
Dim i
for i = 1 to 9
If not request.cookies("rosta")(""&i&"") <> "" then 
response.write "Rösta på: <a href=""vote.asp?Id="& i &""">"& lankar(i-1) &"</a><br>"
end if
next
%>

Och på sidan vote.asp
Så sätter du kakan med:

<%
kakId=request("Id")
response.cookies("rosta")(kakId) = true
response.cookies("rosta")(kakId) = Now()
response.cookies("rosta")(kakId).Expires = "2010-01-01" %>
Medlem sedan juni 20019 519 inlägg
#8

Jesper.. requset("id") det är ju en form.. du får ändra den till request.querystring("id") tror jag

Medlem sedan mars 20015 287 inlägg
#9

request("Id") plockar datat vare sig det är en form eller från en querystring.
Men det skadar inte att skriva ut vad det är exakt man vill åt då servern inte behöver anstränga sig lika mycket.

Nackdelen med detta system är att det är väldigt enkelt att mygla.
Lägg in en koll av refererande sida så blir det något svårare sat att ett formulär är ju än svårare att lura iofs.

Medlem sedan jan. 20022 440 inlägg
#10

Att det skulle vara lättare att "mygla" har jag aldrig hört talas om tidigare...

Medlem sedan nov. 20017 144 inlägg
#11

Som solbulle skriver, om man är på en "formulärsida" och skall skicka värden via ett formulär så är det bättre att plocka upp värderna med request.form("något") än request("något") även fast båda alternativen gör samma sak.
Det andra exemplet möjliggör för den ohyffsade att skriva in alla värden i en querystring.

P.s Solbulle har surt fått erfara det när jag hackade hans hiscorelista i "snake"... §e :e

Medlem sedan jan. 20022 440 inlägg
#12

Men Jeppe din elaking :e

264 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)