Avatar billede benzon Praktikant
16. september 2003 - 17:45 Der er 36 kommentarer og
1 løsning

Cookie spørgsmål/hjælp

Sider og er igang med et konkurence modul og som problemet er lige nu hved jeg ikke præsis hvordan jeg skal håndtere at den cookie altid løber ud den første, altså eks.

Den dag jeg deltager i konkurencen er eks den 2 September den 1 Oktober skal jeg så kunne deltage igen, eks en anden bruger deltager den 28 september, man skal kunne deltage igen den 1 Oktober, hvordan pokker skære man lige den logisk set ?
Avatar billede molle2002 Nybegynder
16. september 2003 - 17:47 #1
gå ind på http://www.spywarefri.dk/ der kan du finde et program som kan styre dine cookies inde under værktøjer i menuen.. OGså hedder programmet CookieWall
Avatar billede molle2002 Nybegynder
16. september 2003 - 17:48 #2
Glemte at det var et svar
Avatar billede sukos Juniormester
16. september 2003 - 17:49 #3
Sætter cookiens levetid til at gælde til den sidste dag i måneden.
Kik på mktime()
http://dk.php.net/manual/en/function.mktime.php
Avatar billede fangel Nybegynder
16. september 2003 - 17:56 #4
som sukos er inde på, så er MKtime() det du leder efter...

du giver den fx

månede = den vi er i + 1
dag = 1
år = det år vi er i
time = 0
minut = 0
sekund = 1

så skulle den kunne klare det

Morten
Avatar billede sukos Juniormester
16. september 2003 - 18:14 #5
hmm, så få nu at vise et time() fra en post:

$tid = mktime($_POST["starttime"],$_POST["startminutter"],0,$_POST["startmaaned"],$_POST["startdato"],$_POST["startaar"]);


$tid = mktime(time, minutter, nul sekunder, måned nr. (f.eks. 02), dato i måned, (f.eks 07), året som det sker(f. eks. 2003));
Avatar billede sukos Juniormester
16. september 2003 - 18:15 #6
Kan jo så resultere i at
$tid = 1058347271;
Avatar billede benzon Praktikant
16. september 2003 - 18:43 #7
Hmm det er meningen det skal køre 100% auto så det bare køre der ud af and so on og jeg ikke skal røre en finger når det er sat igang hehe
Avatar billede sukos Juniormester
16. september 2003 - 18:45 #8
Prøv med en simpel side, hvor du laver et link, "deltag", og klikker man på linket, ja så sættes en cookie som dør når det er en ny måned.
Avatar billede benzon Praktikant
16. september 2003 - 18:47 #9
hvordan arbejder jeg resultatet sammen med ehm setcookie ? er det bare noget med time()+$tid ? eller hvordan ?
Avatar billede fangel Nybegynder
16. september 2003 - 18:52 #10
mktime giver et helt timestamp...

så bare giv den mktime() som expire paramter

Morten
Avatar billede benzon Praktikant
16. september 2003 - 18:56 #11
det vil sige du siger til mig at jeg skal eks bare gøre sådan her
mktime (0,0,1,$mm,1,03); $mm = denne måned + 1
Avatar billede erikjacobsen Ekspert
16. september 2003 - 19:00 #12
Men husk at måned+1 kan være det samme som januar, år+1

Hvad nu med de irriterende nørder som mig, der aldrig acceptere
cookies. Giver det bøvl i dit system ?
Avatar billede benzon Praktikant
16. september 2003 - 19:03 #13
hvordan kan jeg tjekke op på det virker
Avatar billede sukos Juniormester
16. september 2003 - 19:03 #14
Jahh, erik, så kan du jo ikke deltage! :O)

Og måned bør jo helt klart være 01, 02, 03 o.s.v.
Avatar billede benzon Praktikant
16. september 2003 - 19:04 #15
erikjacobsen >> nej overvejer også en form for Ip logning fore sure hehe :) og databasen bliver immer væk tømt en gang i måneden eny way :) når vinderen er udtrukket
Avatar billede benzon Praktikant
16. september 2003 - 19:07 #16
kan væl lave en if lykke der gør følgene hvis måneden er = 12 så sætter den uløb til den 31 11:59:59

så har vi jo også et rigtig udløb i sidste ende enig eller ?
Avatar billede benzon Praktikant
16. september 2003 - 19:09 #17
erikjacobsen >> vilken form ville du vælge for at lave noget smart for at slippe for eks dem der ikke accepter cookies?
Avatar billede sukos Juniormester
16. september 2003 - 19:15 #18
Der findes desværre ikke noget smart, til dem som ikke vil ha' en cookie
Avatar billede erikjacobsen Ekspert
16. september 2003 - 19:15 #19
Jamen, det kan jeg ikke ... ;(  Lav et login/system, så kan du
sikre dig at en bruger kun kan stemme en gang. Men man kan
oprette flere brugere. Forlang at se deres pas, fødselsattest,
sygesikringskort samt alle dere kreditkort + fingeraftryk,
underskrift og DNA-test - så kan du nok sikre dig, at dine
brugere er unikker individer - ellers ved jeg det ret beset ikke.
Avatar billede benzon Praktikant
16. september 2003 - 19:25 #20
heheheh erik den hade jeg også overvejet faktisk, og tror det bliver den, cookie måden kan jeg sku ikke rigtig tjekke 100% hehe jo blocker mig selv 1 måned gider ikke bruge en måned på at lave det heheheh :D

men du har ret det ville være best at lave et login system, og så have et 0 du ændre til 1 eller noget i den stil og når konkurence personen altså ham der styre den går ind og trykker på hans elskede knap træk vinder, så laver den random hent i DB og så snart han trykker ok sender den så data på vinder over i en ny tabel hvor vinderen så ligger og hygger sig godt og grundigt, og efter det er smidt over i den tabel tømmer scriptet så contest tabellen som indeholder eks, id - userid

så snart brugeren står over i contest tabellen kan brugeren ikke deltage mere, er noget i den stil du tænkte på :D
Avatar billede benzon Praktikant
16. september 2003 - 19:28 #21
Session login har jeg også styr på men alt det der PID eller SID kan ikke huske hva der stå det adder den jo ikke auto så skal jeg side og gå amok med at adde den alle steder for at folk som dig kan deltage ;D
Avatar billede erikjacobsen Ekspert
16. september 2003 - 19:30 #22
Jah, men hvis det nu er noget rigtig godt man kan vinde, fx
en dåse portugisiske sardiner, så ville jeg nok oprette ti
brugere med ti forskellige email-adresser (jeg kan lave mange
tusind hvis jeg vil).

Men, tjah, man kan jo også bare sige det ikke er så vigtigt....
Avatar billede sukos Juniormester
16. september 2003 - 19:31 #23
Og hvis brugeren ringer op via f.eks. et analog, (de forsvinder forhåbentligt snart), modem, får brugeren tildelt en ny IP-adresse, og brugeren har selv slettet den cookie som er sat, og kan derfor deltage endnu engang.
??????????
Avatar billede erikjacobsen Ekspert
16. september 2003 - 19:31 #24
En session lever jo ikke næste gang han kommer. Det kan ikke
forhindre ham i at deltage flere gange.
Avatar billede benzon Praktikant
16. september 2003 - 19:31 #25
man kan jo desvære på ingen måde blocke en person 100% med mindre personen har fast ip :D
Avatar billede sukos Juniormester
16. september 2003 - 19:32 #26
Du er vist lidt "kulinarisk", erik? :O)
Avatar billede benzon Praktikant
16. september 2003 - 19:32 #27
nej nej det er jeg med på men til login delen kan man bruge en session konkurence formen skal så være database baseret og tjekke op med db om brugeren kan deltage eller allerede deltager :D
Avatar billede benzon Praktikant
16. september 2003 - 19:34 #28
bliver lige ikk edet men bliver et eller andet med en eller anden sindsyg skive ting dims ja

Men ja det er væl at lave validering på alle fælter eks hvis addresse og Post nummer hænger sammen nægter man bruger at være med altså kun 1 tilmeldelse pr husstand ? det er væl den eneste måde der faktisk er
Avatar billede benzon Praktikant
16. september 2003 - 19:40 #29
Ok se her

Opretbruger >> efter oprettelse får man langtids holdbar cookie der er til 2010 eller sådan noget samt den logger ip

Kan brugeren så ikke eks modtage cookies tjekker man ip op mod hinanden stemmer det over ens blocker systemet jo, stemmer de ikke over ens kommer man til næste validerings face

Brugeren har intastet Adresse og Postnr så tjekker man det op mod hinaden stemmer det over ens blocker den stemmer det ikke over ens blocker den ikke
Avatar billede sukos Juniormester
16. september 2003 - 19:43 #30
Og hvad var det nu lige du spurgte om? :O)


Og, ja, det er jo den vej det kører
Avatar billede benzon Praktikant
16. september 2003 - 19:47 #31
hehe sukos du svarede på det jeg spurgte om og slf. er points til dig Erik kom med gode bud på hva jeg kunne gøre i stedet, go bruger jo til dels begge dele tror jeg det bliver har mit eget sære login script :D

<?php
session_start();
if (!isset($_SESSION['name'],$_SESSION['password'])) {
    header("Location: ../index.php?side=login");
    exit;
}else{
    mysql_connect("localhost","******","******");
    mysql_select_db("******");
    $username = $_SESSION["name"];
    $userpassword = $_SESSION["password"];
    $res = mysql_query("select * from members where nick = '$username' and password = '$userpassword'") or die(mysql_error());
    $sesrow = mysql_fetch_array($res);
    if ($username && $userpassword && $sesrow['nick'] == $username && $sesrow['password'] == $userpassword) {
        echo "";
    }else{
        header("Location: ../index.php?side=login");
        exit;
    }
}
?>
Avatar billede benzon Praktikant
16. september 2003 - 19:48 #32
er mit side tjek hehe :D

laver altid tjek med databasen på alle sider for at det er så sikkert som muligt eller noget i den stil hehe
Avatar billede sukos Juniormester
16. september 2003 - 19:52 #33
Ja, det var nu ikke point jeg tænkte på! :O)
Avatar billede sukos Juniormester
16. september 2003 - 19:54 #34
Og hvis du vil tjekke op med DB'en hver gang, så lav en funktion, som du smider i toppen af hver fil
Avatar billede benzon Praktikant
16. september 2003 - 19:54 #35
sukos i stedet for jeg oprettede en ny tråd er det da bedre jeg holder det her :D
Avatar billede benzon Praktikant
16. september 2003 - 22:24 #36
gør jeg også med den jeg har vist dig der den er max sød og virker som den skal :D
Avatar billede benzon Praktikant
08. oktober 2003 - 10:05 #37
droppede cokie, lyttede til erikjacobsen :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester