14. maj 2006 - 19:42
Der er
19 kommentarer og 1 løsning
if, elseif og else virker ikke?
Hej Jeg kan ikke få dette til at virker: <select size="1" name="id"> <?php if ($nummer == '1') { echo '<option selected value="1">1</option><option value="2">2</option><option value="3">3</option>'; } elseif ($id == '2') { echo '<option value="1">1</option><option selected value="2">2</option><option value="3">3</option>'; } else { echo '<option value="1">1</option><option value="2">2</option><option selected value="3">3</option>'; } ?> </select> Selvom $nummer er 1 eller 2 så bliver den ved med kun at selected 3'eren.. Nogen der kan hjælpe??
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
det er jo fordi du ikke tjekker på samme variabel ;D det ene er $nummer - det andet er $id.
Det giver ingen forskel..
<?php if ($nummer == '1') { echo '<option selected value="1">1</option><option value="2">2</option><option value="3">3</option>'; } elseif ($nummer == '2') { echo '<option value="1">1</option><option selected value="2">2</option><option value="3">3</option>'; } else { echo '<option value="1">1</option><option value="2">2</option><option selected value="3">3</option>'; } ?>
Prøv med: ($nummer == 1) og ($id == 2) dvs, fjern '-tegnet.. Ellers: if () { noget } else { if () { noget } else { noget } }
prøv at fjerne '' om tallene $nummer == 1
thesurfer var vidst kvik der :D
Troede '' ikke havde noget at sige... Den rigtige kode ser sådan her ud: <select size="1" name="kon"> <?php if ($kon == 'Hoppe') { echo '<option selected value="Hoppe">Hoppe</option><option value="Vallak">Vallak</option><option value="Hingst">Hingst</option>'; } elseif ($kon == 'Vallak') { echo '<option value="Hoppe">Hoppe</option><option selected value="Vallak">Vallak</option><option value="Hingst">Hingst</option>'; } else { echo '<option value="Hoppe">Hoppe</option><option value="Vallak">Vallak</option><option selected value="Hingst">Hingst</option>'; } ?> </select> Brugte bare 123 for at nemmere at forklare, men det kunne jeg så ikke :/
$kon = 'hoppe' $kon = 'vallak' prøv lige den
Har selv fundet fejlen... Det var slet ikke der, men længere oppe i min kode.. Smid alligevel et svar..
Det kunne også være, at du ikke får aflæst name="kon" korrekt.. hvis du ikke får vil $kon altid være '', og derfor vil den vælge den sidste.. test: echo "kon: *" . $kon . "*"; Hvis der bare står "**", er det fordi $kon er tom..
<select size="1" name="kon"> <?php $kon = "Vallak"; if ($kon == "Hoppe") { echo '<option selected value="Hoppe">Hoppe</option><option value="Vallak">Vallak</option><option value="Hingst">Hingst</option>'; } elseif ($kon == "Vallak") { echo '<option value="Hoppe">Hoppe</option><option selected value="Vallak">Vallak</option><option value="Hingst">Hingst</option>'; } else { echo '<option value="Hoppe">Hoppe</option><option value="Vallak">Vallak</option><option selected value="Hingst">Hingst</option>'; } ?> </select>
Ingen points til mig, tak.
thesurfer, kan også bruge var_dump(). En del hurtigere at skrive ;)
Du skal huske at $kon skal indeholde Hoppe eller Vallak og ikke hoppe eller vallak. :)
hmortensen> Nu kan jeg ikke PHP, så jeg vælger de simple løsninger.. :-)
Det ville nok være en god ide, at konvertere $kon til lowercase (små bogstaver).. Så er det nemmere at huske hvordan man skal sammenligne..
mpj_86> Hvad mener du med "Lukker..." og hvorfor snupper du pointsne selv?
Vi tilbyder markedets bedste kurser inden for webudvikling