webForumDet fria alternativet

Sätt cookie för att förhindra dubbelröstning

ASP

17 svar · 343 visningar · startad av MickeA.com

Medlem sedan feb. 20034 441 inlägg
Frågan#1

Hej

Har gjort en undersökning.

Nu vill jag när en person röstar sätta en cookie, som förhindrar dubbel röstning.

Hur ska jag göra, har ALDRIG hållt på med cookies, så har inte en susning.

Tack

Medlem sedan nov. 20017 144 inlägg
#2

Nåt liknande kanske:

maila = request.cookies("maila")  
if not maila <>"" then
strMaila=DateAdd("n", +1, Time)
else
strMaila=request.cookies("maila")
end if
if dateDiff("n",Time(),strMaila)<1 then
'Måste vänta minst 5 minuter
Response.redirect "hellvetet.asp"

else

'Gör en insert i din databas eller något annat kul

Response.Cookies("maila")= time()
Response.Cookies("maila").Expires = dateAdd("n",5,now()) '5(minuter) kan ändras beroende på önskemål
end if 

Response.redirect "paradiset.asp"
Medlem sedan feb. 20034 441 inlägg
#3

Ok, men nu r jag inte med helt o hållet, vad är "maila" o alla dessa saker?"

Men tack, ska testa ltie ; )

Medlem sedan nov. 20017 144 inlägg
#4

Det råkade bara bli namnet på kakan, du kan kalla den vad du vill.
F.ö. så är väl namnet "maila" en aning missvisande. Hade bara scriptet i mina gömmor. :)

Medlem sedan feb. 20034 441 inlägg
#5

HeHe, ok tack, ska snart testa om det funkar ;=))

Medlem sedan feb. 20034 441 inlägg
#6

HaHa, det funkar ; )) Tack & bock

Medlem sedan feb. 20034 441 inlägg
#7

Nej...

det funakr inte...

Det här scriptet körs innan själva pollen laddas...

Det är Flash, som vanligt när det gäller mig ; )

Måste jag inte i aspkoden för att lägga till sätt en ny cookie hos klienten?

Om man utgår från scripetet ovan, hur ska jag göra?!

Medlem sedan nov. 20017 144 inlägg
#8

Har i.o.f.s ingen aning om hur flash funkar tillsammans med asp. Men pricipen är väl denna:

 maila = request.cookies("maila")  
     if not maila <>"" then
         strMaila=DateAdd("n", +1, Time)
             else
          strMaila=request.cookies("maila")
     end if
      
   if dateDiff("n",Time(),strMaila)<1 then

[3][b]'Uppdatera inte pollen![/b][/3]
 
   else

[3][b]'Uppdatera pollen![/b][/3]

Response.Cookies("maila")= time()
Response.Cookies("maila").Expires = dateAdd("n",5,now())
    end if
Medlem sedan feb. 20034 441 inlägg
#9

Nu funark det, med det gamla.

PRoblemet med att blanda asp & flash är flash godtar inte vissa saker, sen måste variabler formateras på ett spec. sätt för godtas.

Först hade jag "kak-kollaren" i en separat fil, som kollade innan själva pollen initerades.

Men jag gjorde en fuskis, la in scriptet i ladda.asp oc läste av resultatet i flash, var "cookie" sann, skulle den gå till en annan frame ; )

Men Tack & bock & G'natt

Medlem sedan apr. 2003120 inlägg
#10

jag måste säga att pollen såg jävligt bra ut!

Snyggt att den animerade resultatet

Medlem sedan feb. 20034 441 inlägg
#11

Tack

...så mkt, är faktiskt nöjd med den.

Utan er på wF så hade det kanske inte löst sig ;)

Medlem sedan feb. 20034 441 inlägg
#12

MEn...

Nu har jag satt tiden för kakan, som i scriptet ovan är satt till 5 min, till 99 min.

Men jag vill ju att man bara ska kunna rösta EN gång, sen ligger kakan där, tar man därimot bort kakan så kan man ju köra igen, men ajg vill alltså sätta tiden till "oändlig", om ni förstår.

Hur ska de sista radera i scrioptet då se ut?!

Medlem sedan juni 200032 967 inlägg
#13

Tja, du borde ju istället för 99 minuter kunna lägga på 99 år?

Medlem sedan feb. 20034 441 inlägg
#14

Ok men hur?? utgå från koden ovan är du snäll, för det är den jag kör med.

Medlem sedan juni 200032 967 inlägg
#15

Här utgås inte från någonting. :e

I Microsofts VB-Scriptreferens (som du givetvis har som bokmärke i din webbläsare) står hur du ska göra.

Här

mvh

Medlem sedan feb. 20034 441 inlägg
#16

Förlåt, nu har jag läst o provat fram o tillbaks, men fattar inte...

maila = request.cookies("maila") 

if not maila <>"" then
	strMaila=DateAdd("n", +1, Time)
else
	strMaila=request.cookies("maila")
end if

if dateDiff("n",Time(),strMaila)<1 then
'Måste vänta minst 5 minuter
Response.Write("&cookie=true")

else

'Gör en insert i din databas eller något annat kul

Response.Cookies("maila")= time()
Response.Cookies("maila").Expires = dateAdd("n",99,now()) '5(minuter) kan ändras beroende på önskemål

Så, frågan:

- Hur sätter jag så att 99 min blir 99 år??

Medlem sedan nov. 20017 144 inlägg
#17

Byt ut: dateAdd("n"....
till:
dateAdd("yyyy"....

yyyy=år
q=kvartal
m=månad
y=dag på året
d=dag
w=veckodag
ww=vecka
h=timme
n=minut
s=sekund

:)

Medlem sedan feb. 20034 441 inlägg
#18

ok, tack, nu fattar jag t.o.m !!!

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