Avatar billede kwanstudios Nybegynder
30. december 2003 - 20:15 Der er 17 kommentarer og
1 løsning

Spørgeskema popup

Jeg søger en ekspert der kan hjælpe mig med nedenstående problemstilling:

Jeg har en spørgeskemaundersøgelse der snarest skal online der er dog en ting jeg mangler at få lavet. Når vinduet første gang automatisk popper op når brugeren besøger sitet, er der en knap i selve popup vinduets indhold der hedder noget ala "Nej tak og vis ikke igen", denne knap skal resultere i at der bliver sat en cookie på brugerens computer der sørger for at den ikke bliver vist igen. Denne cookie sættes også når/hvis brugeren har udfyldt spørgeskemaet til fylde. Problemet er dog spørgeskemaet kører på mit firmas server og de sites hvor skemaet popper op fra kun modtager et stykke js kode de sætter ind og jeg er derfor nød til at sætte cookien på vores domæne. Det gør at vinduet må poppe op hver gang brugeren besøger siden, men så snart js finder ud af at personen allerede har været der lukker den det igen.

Så det jeg skal bruge er:

-Et komplet js script der sætter cookie og kan lukke vindue hvis cookie er sat.

Burde være nemt? :)

Undskyld den lange forklaring - I kan lune jer med 175 point :)
Avatar billede mini-me Nybegynder
30. december 2003 - 20:32 #1
Det burde vel være muligt at skrive en cookie i js ?
Avatar billede mini-me Nybegynder
30. december 2003 - 20:33 #2
Ikke at jeg rigtig har nogen ide til hvordan udover at det må være noget med document.write osv ,-) Men jeg lytter lige med. kunne være det blev nødvendigt en dag..
Avatar billede kwanstudios Nybegynder
30. december 2003 - 20:34 #3
Jeg ved det er muligt, min programmør har bare været syg i tre dage i træk.. ovenstående spørgsmål er lavet udfra hans instruktioner i telefonen tidligere i dag..har bare ikke haft tid til at oprette det før nu
Avatar billede mini-me Nybegynder
30. december 2003 - 20:37 #4
Jamen kan du selv tilpasse noget kode eller hva? For jeg har noget ældgammel kode liggende der kan gøre noget af tricket i hvert fald.
Avatar billede kwanstudios Nybegynder
30. december 2003 - 20:42 #5
Jeg kan hvertfald se hvad betyder hvad, og kan da også logge ind på hans maskine og finde noget af det han arbejdede med inden han blev syg.. :)
Avatar billede kwanstudios Nybegynder
30. december 2003 - 20:53 #6
Jeg undskylder forsinkelsen, jeg er ikke så hård til linux eller at finde rundt i filer.. http://linuxmagasin.dk/foo.php :)
Avatar billede mini-me Nybegynder
30. december 2003 - 20:58 #7
Så er jeg ikke helt med... hvad skal den side du sendte brugs til ?
Avatar billede kwanstudios Nybegynder
30. december 2003 - 21:08 #8
Se kilden.. den sætter cookie for at man ikke vil se popup'en igen.. og omvendt.. burde kunne bruges.. det var hvad han gik i gang med fra starten :)
Avatar billede mini-me Nybegynder
30. december 2003 - 21:10 #9
ahh okay...
Avatar billede kwanstudios Nybegynder
30. december 2003 - 21:15 #10
er der nogen der kan hjælpe mig udfra det?
Avatar billede mini-me Nybegynder
30. december 2003 - 21:18 #11
Hmmm jeg kigger lige på det, men jeg ved ikke hlet om jeg kan komme med en komplet løsning
Avatar billede mini-me Nybegynder
30. december 2003 - 21:29 #12
Desværre... det er ikke min hjemmebane...
Avatar billede espersen Novice
30. december 2003 - 21:33 #13
Olebole har svaret i dette spm. (og han ved da ret meget om javascript - så det virker sikkert):
http://www.eksperten.dk/spm/422194
Avatar billede kwanstudios Nybegynder
30. december 2003 - 22:53 #14
espersen.. jeg synes ikke at få mere ud af bole's end det jeg selv har på http://linuxmagasin.dk/foo.php ?
Avatar billede roenving Novice
31. december 2003 - 02:02 #15
Snakker vi forskellige domæner, er du født med problemer !-)

-- men een facilitet er indbygget i cookies, nemlig at man kan sætte domæne på ...

I javascript ser den fuldstændige syntaks sådan ud:

document.cookie =
  "cookiename=cookiedata
  ;expires=timeInGMTString
  ;path=pathName
  ;domain=domainName
  ;secure"

-- så det du muligvis kan gøre, er at sætte domain på med en fuld url:

var exp = new Date(new Date().getTime()+30*24*60*60*1000);//30 dage
document.cookie = "evalForm=yes;expires="+exp.toGMTString()+";domain=http://www.ditFirmasDomaine.dk"
Avatar billede kwanstudios Nybegynder
02. januar 2004 - 14:38 #16
roenving.. er det muligt du kan lave et eksempel? :)
Avatar billede kwanstudios Nybegynder
02. januar 2004 - 21:13 #17
anyone?
Avatar billede kwanstudios Nybegynder
05. januar 2004 - 16:24 #18
Så blev det hverdag igen og min programmør fik ordnet det. Lukker. Løsningen endte med at være noget henad:

    var expireDays = 30;
   
    function setStatus(status) {
        var today = new Date();
        var expiredate = new Date();
        if(status == 'allow') {
            expiredate.setTime(today.getTime()-1);
        }
        else {
            expiredate.setTime(today.getTime()+3600000*24*expireDays);
        }
    document.cookie ="popupDone=foo;expires="+expiredate.toGMTString();
    }
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