Avatar billede duqe Nybegynder
10. juni 2008 - 22:30 Der er 4 kommentarer og
1 løsning

Checkbox returnerer ikke on/off

Hej

Jeg har en html-form med nogle tekstfelter og nogle afkrydsninsfelter (checkbox).

<form action="addreview_final.php" method="post">
<input type="text" name="overskrift">
<input type="checkbox" name="tmc"> TMC
<input type="checkbox" name="mp3"> MP3

Hvis jeg krydser felterne af, og prøver at udskrive deres "værdi", får jeg kun respons hvis de er krydsede af (on)

I min addreview_final.php, har jeg følgende kode:

if ($_POST['tmc'] = on){ echo "Det virker"; }
if (!$_POST['tmc']){ echo "det virker ikke"; }

Men ligemeget om jeg har krydset feltet af eller ej, går den hele tiden ud fra at "TMC" = on.

Hvis jeg laver en: echo $_POST['tmc'] og feltet er krydset af, skriver den "on"
Men den skriver også "on" hvis jeg ikke krydser feltet af, hvilket selvfølgelig ikke er meningen

Kender nogle til dette problem?
På forhånd tak
Avatar billede yHec Novice
10. juni 2008 - 22:38 #1
Ret denne linje:
if ($_POST['tmc'] = on){ echo "Det virker"; }
Lighedstegnet skal være dobbelt "==", det sammenligner, et enkelt tildeler en værdi. Det er en væsentlig forskel.

/y
Avatar billede yHec Novice
10. juni 2008 - 22:39 #2
Lige lidt mere:
if ($_POST['tmc'] = on){ echo "Det virker"; }
if (!$_POST['tmc']){ echo "det virker ikke"; }

Det du gør her, er følgende:
Du tildeler værdien "on" til $_POST['tmc'], også vil echo $_POST['tmc'] altid udskrive "on", uanset hvad du har sat den til i din formular.

/y
Avatar billede duqe Nybegynder
10. juni 2008 - 22:48 #3
Hej

Tak for svaret - To lighedstegn gjorde forskellen og det virker nu :)
Smider du et svar så jeg kan give point?
Avatar billede jakobdo Ekspert
11. juni 2008 - 06:37 #4
Du burde kunne nøjes med:
$tmc = (isset($_POST['tmc'])) ? 'on' : 'off';

Så vil $tmc indeholde on når den er on og ellers off.
Avatar billede yHec Novice
11. juni 2008 - 12:17 #5
100 point er lidt meget, tag nogen mtil dig selv eller til jakobdo

Mange tak :-)

/y
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