Avatar billede qbob Nybegynder
26. juli 2005 - 13:48 Der er 11 kommentarer og
1 løsning

switch: hvordan er det nu ?

Er der nogle der vil genopfriske min hukommelse ?

      <?php
      if (isset($_REQUEST['id']))
      {
      switch($_REQUEST['id']) {
          case "hq": { include("hq.tpl"); break; }
        case "news": { include("news.tpl"); break; }
            }
            else
            {
          include("index.tpl");
            }
        ?>

Hvad er der galt her og hvordan skal det se ud ?
Avatar billede barklund Nybegynder
26. juli 2005 - 13:51 #1
Det hedder ikke else, men default:

switch($_REQUEST['id']) {
  case "hq":
    include("hq.tpl");
    break;
  case "news":
    include("news.tpl");
    break;
  default:
    include("index.tpl");
    break;
}

:)

--
Morten Barklund
Avatar billede jaw Nybegynder
26. juli 2005 - 13:53 #2
Jeg kan ikke se der er noget galt??? Else'n kommer jo fra if(isset($_REGUEST['id'])) ?!
Avatar billede barklund Nybegynder
26. juli 2005 - 13:57 #3
Nope, sådan er brackets i hvert fald ikke balancerede - switch'en eller if'en afsluttes ikke korrekt :)

I så fald skal det være:

if (isset($_REQUEST['id'])) {
  switch($_REQUEST['id']) {
    case "hq":
      include("hq.tpl");
      break;
    case "news":
      include("news.tpl");
      break;
  } // end switch
} else {
  include("index.tpl");
}

Men der skal vel stadig være en default-case :)

Måske det kønneste ville være:

$id = isset($_REQUEST['id']) ? $_REQUEST['id'] : null;
switch($id) {
  case "hq":
    include("hq.tpl");
    break;
  case "news":
    include("news.tpl");
    break;
  default:
    include("index.tpl");
    break;
}

Vil jeg næsten mene :)

--
Morten Barklund
Avatar billede blackscorpion Nybegynder
26. juli 2005 - 13:59 #4
i følge hans kode kommer else'en fra switchen, så han mangler derfor at afslutte sin if.


    <?php
      if (isset($_REQUEST['id'])) {
      switch($_REQUEST['id']) {
        case "hq":
        include("hq.tpl");
        break;
        case "news":
        include("news.tpl");
        break;
        default:
        include("index.tpl");
        break;
      }
      }
      else {
      include("index.tpl");
      }
    ?>
Avatar billede jaw Nybegynder
26. juli 2005 - 14:02 #5
Åh ja, der blev jeg lige snydt af den "tossede" måde det var sat op på :)
Avatar billede blackscorpion Nybegynder
26. juli 2005 - 14:03 #6
hehe det kan ske, derfor kører jeg det altid slavisk igennem, for at se om alt er afsluttet. ;)
Avatar billede qbob Nybegynder
26. juli 2005 - 14:09 #7
<?php
        $id = isset($_REQUEST['id']) ? $_REQUEST['id'] : null;
        switch($id) {
              case "hq": include("hq.tpl"); break;
              case "news": include("news.tpl"); break;
              default: include("index.tpl"); break;
            }
    ?>

Virker for mig ... :-)
Point til dig :-)
Avatar billede jaw Nybegynder
26. juli 2005 - 14:12 #8
Ja, ja, vil jeg normalt også gøre, men midt i frokosten kiggede jeg bare på antallet og troede det passede :)
Avatar billede blackscorpion Nybegynder
26. juli 2005 - 14:13 #9
lol. :) Kender det alt for godt. ;)
Avatar billede barklund Nybegynder
26. juli 2005 - 17:03 #10
Mjæææs, jeg kaster et svar :)
Avatar billede barklund Nybegynder
27. juli 2005 - 10:57 #11
Tark for points :)
Avatar billede qbob Nybegynder
27. juli 2005 - 10:59 #12
:-)
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