Avatar billede mpj_86 Nybegynder
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??
Avatar billede Six Nybegynder
14. maj 2006 - 19:48 #1
det er jo fordi du ikke tjekker på samme variabel ;D det ene er $nummer - det andet er $id.
Avatar billede mpj_86 Nybegynder
14. maj 2006 - 19:50 #2
Det giver ingen forskel..
Avatar billede Six Nybegynder
14. maj 2006 - 19:51 #3
<?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>';
      }
      ?>
Avatar billede thesurfer Nybegynder
14. maj 2006 - 19:51 #4
Prøv med:
($nummer == 1)

og

($id == 2)

dvs, fjern '-tegnet..

Ellers:

if () {
noget
} else {
  if () {
    noget
  } else {
    noget
  }
}
Avatar billede Six Nybegynder
14. maj 2006 - 19:52 #5
prøv at fjerne '' om tallene $nummer == 1
Avatar billede Six Nybegynder
14. maj 2006 - 19:52 #6
thesurfer var vidst kvik der :D
Avatar billede mpj_86 Nybegynder
14. maj 2006 - 19:55 #7
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 :/
Avatar billede Six Nybegynder
14. maj 2006 - 19:58 #8
$kon = 'hoppe'
$kon = 'vallak'
prøv lige den
Avatar billede mpj_86 Nybegynder
14. maj 2006 - 19:59 #9
Har selv fundet fejlen...

Det var slet ikke der, men længere oppe i min kode..

Smid alligevel et svar..
Avatar billede thesurfer Nybegynder
14. maj 2006 - 20:00 #10
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..
Avatar billede Six Nybegynder
14. maj 2006 - 20:01 #11
<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>
Avatar billede thesurfer Nybegynder
14. maj 2006 - 20:01 #12
Ingen points til mig, tak.
Avatar billede hmortensen Nybegynder
14. maj 2006 - 20:01 #13
thesurfer, kan også bruge var_dump(). En del hurtigere at skrive ;)
Avatar billede Six Nybegynder
14. maj 2006 - 20:02 #14
Du skal huske at $kon skal indeholde Hoppe eller Vallak og ikke hoppe eller vallak. :)
Avatar billede thesurfer Nybegynder
14. maj 2006 - 20:18 #15
hmortensen> Nu kan jeg ikke PHP, så jeg vælger de simple løsninger.. :-)
Avatar billede thesurfer Nybegynder
14. maj 2006 - 20:19 #16
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..
Avatar billede mpj_86 Nybegynder
16. maj 2006 - 15:43 #17
Lukker...
Avatar billede thesurfer Nybegynder
16. maj 2006 - 16:14 #18
mpj_86> Hvad mener du med "Lukker..." og hvorfor snupper du pointsne selv?
Avatar billede mpj_86 Nybegynder
16. maj 2006 - 17:52 #19
Læs: 14/05-2006 19:59:53
Avatar billede thesurfer Nybegynder
16. maj 2006 - 18:58 #20
Ahh :-)
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