Gå til innhold

IF og checkboxer


Anbefalte innlegg

Hei!

 

Driver å lager en liten quiz i forbindelse med en skoleoppgave.

 

Har et skjema i HTML hvor jeg da bruker $_GET for å hente verdig og lagrer dette i separerte variabler. Derfra er det ikke noe problem å sjekke verdien mot en betingelse.

 

Problemet er checkoxer.

Se for deg f.eks følgende forms i HTML. Her er flere enn èn riktig.

<input type="checkbox" name="sp2" value="hdd"/>Påstand1<br />
<input type="checkbox" name="sp2" value="bil"/>Påstand2<br />
<input type="checkbox" name="sp2" value="fisk"/>Påstand2<br />

 

Og i PHP

$sp2 = $_GET["sp2"];

if(isset($sp2))
{
 if($sp2 == "bil" && $sp2 == "fisk")
 {
   echo "Du hadde 2/2 riktige";
 }
 elseif($sp2 == "bil" || $sp2 == "fisk")
 {
   echo "Du hadde 1 av 2 riktige";
}

 

Problemet her er at testen IKKE klarer lese && (AND)! Kutter jeg ut den biten, men bare tar den delen med || (OR) fungerer det helt fint, men det gjør jo ikke det jeg ber om. Poenget er at jeg vil gi 2 poeng ved begge riktige, mens bruker får 1/2 poeng ved 1 riktig.

 

Noen som kan hjelpe? Har holdt på siden 1400 i dag, uten hell!

Lenke til kommentar
Videoannonse
Annonse

Hvordan kan $sp2 både være lik "bil" og lik "fisk" samtidig? Tenk deg om før du svarer ;)

 

Du bør nok gi de ulike checkboxene ulike navn, og så hver av dem om de har noen verdi separat.

 

Han sjekker om det er en av dem, ikke om det er begge samtidig.

*facepalm*

Lenke til kommentar

Takk til begge to, men Torbjørn har et godt poeng. I den ene testen sjekker jeg faktisk om $sp2 == "bil" && $sp2 == fisk samtidig, og det er jo ikke mulig i utgangspunktet at den variabelen holder to verdier samtidig! :)Herregud så obvious! :D

Endret av affe90
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...