Avatar billede fcs Novice
25. april 2001 - 15:22 Der er 15 kommentarer og
1 løsning

Spørgeskema via cookie (med dropdownboks og tekstfelter)

Jeg oprettede spørgsmålet under kategorien [HTML], men har nu fundet ud af at det nok snarere hører til herinde. Ydermere har jeg fordoblet pointantallet, så nu håber jeg bare......

Først og fremmest bør jeg pointere at jeg INTET aner om Javascript, så være rare ved mig ;-)

Jeg vil gerne lave en brugerundersøgelse på min hjemmeside og har derfor brug for følgende:

1) Hvordan laver jeg et link på min indexside der laver et pop-up vindue, hvis der ikke er sat en cookie der betyder at brugeren tidligere har udfyldt spørgeskemaet????

2) Et spørgeskema, som indeholder følgende:
    A) En dropdownboks med 4 valgmuligheder (jeg skal bruge flere dropdownbokse, men resten kan jeg vel finde ud af at lave selv).
    B) Et felt til fri tekst.
    C) En submitknap, som sender indholdet til min e-mailadresse (fcs@skjoldhoej.dk)og sætter en cookie der betyder at vedkommende har udfyldt spørgeskemaet.

Det var vist det hele. Jeg har kigget rundt på nettet og har ikke fundet nogle løsninger der. Heller ikke sådan noget som www.quickpoll.dk eller lignende. Jeg skal bruge kode som jeg selv kan indsætte på min hjemmeside. Jeg bør vel pointere at de besøgende på siden ikke behøver at kunne se resultaterne - det er nok at jeg bare får de enkelte besvarelser tilsendt via mail.
Avatar billede jensgram Nybegynder
25. april 2001 - 16:01 #1
Du kan ikke sende mail dirkete fra JavaScript. Har du mulighed for PHP?
Avatar billede jensgram Nybegynder
25. april 2001 - 16:01 #2
> dirkete = direkte
Avatar billede fcs Novice
25. april 2001 - 16:02 #3
Ja, det mener jeg, men jeg fatter INTET af php. hvis der kommer en løsning i PHP skal den være penslet ud med forklaringer i hoved og r.. ;-)
Avatar billede jensgram Nybegynder
25. april 2001 - 16:07 #4
Hmm - du ved det ikke helt - hvilken server ligger dine filer på?

Der er forresten en vældig god forklaring på, hvordan man laver afstemninger på: http://www.devshed.com/Server_Side/PHP/PHPDemocracy/
Avatar billede fcs Novice
25. april 2001 - 16:15 #5
Noname>> Jeg har adgang til PHP!!! Det link du gav mig kan jeg ikke bruge til så meget - som jeg skrev tidligere fatter jeg MINUS af PHP og MySql og hvad det ellers hedder. Jeg har rimeligt check på HTML, men ikke så meget andet programmeringsmæssigt.
Avatar billede jensgram Nybegynder
25. april 2001 - 21:58 #6
Så lav din form med afstemningsmulighederne 1, 2, 3 i \"valg\" samt teksten text. Følgende fil kalder du send.php og du skriver \"send.php\" i action-attributten i <form>:

<?php

if(!empty($valg) $harstemt!=\"jep\"){
mail(\"DINEMAIL@server.com\", \"afstemning\", \"Brugeren har stemt følgende:
$valg

Kommentar:
$text\");

setcookie(\"harstemt\",\"jep\",time()+86400); // kan stemme én gang pr. døgn = 86400 sek.

}else{
print \"Svin - du har stemt\";
}
?>

(det er bare skrevet, men det burde virke
Avatar billede fcs Novice
25. april 2001 - 22:58 #7
Det fatter jeg minus af.

Læs punkt 1 i mit spørgsmål. Hvordan gør jeg det.

Hvordan skal jeg lave min form, valgmuligheder, tekstfelter, etc (du blive nødt til at give mig et eksempel, da jeg er en totalt abe til det her)

Det kan godt være at jeg er dum, men jeg er ikke bange (mit livs motto), så hvis du kan forklare mig igennem denne her, så er jeg frisk på at sætte pointsummen op.
Avatar billede jensgram Nybegynder
26. april 2001 - 14:42 #8
<script language=\"javascript\">
if (document.cookie){
winpopup(); // Kør en funk. der hedder winpopup, hvis der er sat en cookie
}
</script>
<form action=\"send.php\">
<input type=\"radio\" name=\"valg\" value=\"1\">1
<input type=\"radio\" name=\"valg\" value=\"2\">2
<input type=\"radio\" name=\"valg\" value=\"3\">3
<textarea name=\"text\"></textarea>
<input type=\"submit\">
</form>
Avatar billede jensgram Nybegynder
26. april 2001 - 18:28 #9
Du kan selvfølgelig og så bruge:

<index.php>
<?php
if(!empty($valg) && $harstemt!=\"jep\"){
print \"<script>popup()</script>
}

popup() åbner så et vindue med filen stem.html:
<stem.html>
<form action=\"send.php\">
<input type=\"radio\" name=\"valg\" value=\"1\">1
<input type=\"radio\" name=\"valg\" value=\"2\">2
<input type=\"radio\" name=\"valg\" value=\"3\">3
<textarea name=\"text\"></textarea>
<input type=\"submit\">
</form>

Formen sendes til send.php:
<send.php>
mail(\"DINEMAIL@server.com\", \"afstemning\", \"Brugeren har stemt følgende:
$valg

Kommentar:
$text\");

setcookie(\"harstemt\",\"jep\",time()+86400); // kan stemme én gang pr. døgn = 86400 sek.

Avatar billede jensgram Nybegynder
26. april 2001 - 18:30 #10
UPS:

<index.php>
<?php
if(!empty($valg) && $harstemt!=\"jep\"){
print \"<script>popup()</script>
}
?>

popup() åbner så et vindue med filen stem.html:
<stem.html>
<form action=\"send.php\">
<input type=\"radio\" name=\"valg\" value=\"1\">1
<input type=\"radio\" name=\"valg\" value=\"2\">2
<input type=\"radio\" name=\"valg\" value=\"3\">3
<textarea name=\"text\"></textarea>
<input type=\"submit\">
</form>

Formen sendes til send.php:
<send.php>
<?php
mail(\"DINEMAIL@server.com\", \"afstemning\", \"Brugeren har stemt følgende:
$valg

Kommentar:
$text\");

setcookie(\"harstemt\",\"jep\",time()+86400); // kan stemme én gang pr. døgn = 86400 sek.
?>
Avatar billede fcs Novice
27. april 2001 - 09:12 #11
OK, lad mig se om jeg har fattet dette rigtigt....

<index.php>
<?php
if(!empty($valg) && $harstemt!=\"jep\"){
print \"<script>popup()</script>
}
?>

Dette er min index-side, korrekt? Men jeg har allerede en index.html, så hvordan får jeg de to bygget sammen? Skal der ikke være en reference til siden stem.htm i forbindelse med popup() ??

<stem.html>
<form action=\"send.php\">
<input type=\"radio\" name=\"valg\" value=\"1\">1
<input type=\"radio\" name=\"valg\" value=\"2\">2
<input type=\"radio\" name=\"valg\" value=\"3\">3
<textarea name=\"text\"></textarea>
<input type=\"submit\">
</form>

Dette er et udkast til siden stem.htm, korrekt??
Det ser OK ud og det har jeg ingen problemer med at forstå!!! (Juhuuuu)

<send.php>
<?php
mail(\"DINEMAIL@server.com\", \"afstemning\", \"Brugeren har stemt følgende:
$valg

Kommentar:
$text\");

setcookie(\"harstemt\",\"jep\",time()+86400); // kan stemme én gang pr. døgn = 86400 sek.
?>

Dette skal være en side, som hedder send.php????
Jeg tror godt at jeg kan gennemskue den, da den vel bare skal se ud som den gør!

Har jeg ret i alt det ovenstående og hvad har jeg misforstået (der må være et eller andet jeg har fået galt fat i, jeg er nemlig ikke så klog ;-) ??



Avatar billede jensgram Nybegynder
27. april 2001 - 12:47 #12
Jo, det er faktisk rigtigt. Hvis du har mulighed for at omdøbe din index.html til index.php og så sætte den lille kodestump ind et sted i <head> ville det virke feeee.

popup() er bare en funktion, man selv skal lave. Jeg kan ikke lige huske, hvordan man åbner et vindue, men stem.php skal være filen, der åbnes i dette!
Avatar billede jensgram Nybegynder
27. april 2001 - 12:48 #13
UPS stem.php = stem.html
Avatar billede jensgram Nybegynder
27. april 2001 - 12:51 #14
Ups læste lige spm 1. Du skal indsætte flg. i index.php instedet for det, der allerede står:

<?php
if(!empty($valg) && $harstemt!=\"jep\"){
print \"<a href=\\\"java script:popup()\\\">STEM</a>\";
}
?>
Avatar billede fcs Novice
28. maj 2001 - 16:12 #15
Mr Noname>> Undskyld den lange ventetid, men jeg har haft morderligt travlt. Jeg kan ikke helt få det hele til at virke som det skal, men jeg accepterer nu og så vender jeg tilbage senere hvis det bliver nødvendigt. Er det OK?
Avatar billede jensgram Nybegynder
28. maj 2001 - 17:25 #16
det er i orden ! ;-[
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