Avatar billede kimmys Nybegynder
27. juli 2015 - 20:21 Der er 9 kommentarer

Page Switch

Hej

Kan man ikke bruge switch mere?
Jeg bruger det til min menu, så jeg kan skifte rundt på mine sider, men kan se at det ikke længere virker på min hjemmeside.

Min kode:

<?php
    switch($ID) {
   
      # M E N U
        case page_e155833_categoryID_284395c6d155: include("PAGES/INFO/INFOPAGE.html"); break; # INFO

        case page_f347954_categoryID_564579d45666:
include("PAGES/THEHONORABLEMEMBERSOF/THEHONORABLEMEMBERSOF.html"); break; # MEMBERS

        case page_h864349_categoryID_355676f63556: include("PAGES/KONTAKT/KONTAKT.html"); break; # links
       
  }
?>
<?php
if(!$_GET['ID']) {
include("tilindex.php");
}
?>

<base target="_self">


<li><b>
<a id="link1" href="index.php?ID=page_e155833_categoryID_284395c6d155"><font size="4">
I N F O</font></a></b></li>

<li><b>
<a id="link1" href="index.php?ID=page_g369863_categoryID_957663e74257"><font size="4">
M E M B E R S </font></a></b></li>

<li><b>
<a id="link1" href="index.php?iD=page_h864349_categoryID_355676f63556"> C O N T A C T</a></font></b></li>


_____________________

Jeg har prøvet nogle andre koder, men uden held:

<?php
$id = isset($_GET['ID']) ? $_GET['ID'] : ''; //This is just  a short if-else
    switch($ID) {
   
      # M E N U
        case 1: include("side1.html"); break; # INFO
     
        case 2: include("side2.html"); break; # MEMBERS
 
    }
?>
<?php
if(!$_GET['ID']) {
include("tilindex.php");
}
?>

<li><b>
<a id="link1" href="index.php?ID=1"><font size="4">
I N F O</font></a></b></li>


<li><b>
<a id="link1" href="index.php?ID=2"><font size="4">
M E M B E R S </font></a></b></li>

__________________________________


Er det ikke længere muligt at bruge switch, eller skal der ændres noget i den første kode før det virker?
Den inkludere fint "tilindex.php" men når jeg trykker på et link, kommer der intet og siden bliver blank, der hvor den skulle switch indhold.

Tak - Kim
Avatar billede Slater Ekspert
27. juli 2015 - 20:27 #1
Switch virker fint, men hvad indeholder $ID?

Det virker lidt underligt at du bruger lange konstanter som cases. Skal de evt. være strings? Ellers kan vi ikke se hvad de er sat til.
Avatar billede arne_v Ekspert
27. juli 2015 - 20:35 #2
register_globals on->off maaske?
Avatar billede kimmys Nybegynder
27. juli 2015 - 20:37 #3
>arne_v - Kan man lave en switch-kode, som virker med register_globals on?
Avatar billede kimmys Nybegynder
27. juli 2015 - 20:41 #4
Jeg har læst mig til at efter opdaterting PHP 5.4.0, kan man ikke længere register_globals on->off
Avatar billede arne_v Ekspert
27. juli 2015 - 20:47 #5
Det var en mulig forklaring paa hvorfor det er har virker men nu ikke laengere virker.

Og:

$ID = $_GET['ID'];

lyder som den rigtige loesning.
Avatar billede arne_v Ekspert
27. juli 2015 - 20:53 #6
Bemaerk $ID ikke $id.
Avatar billede kimmys Nybegynder
27. juli 2015 - 21:37 #7
arne_v:
hvad mener du med "$ID = $_GET['ID'];
lyder som den rigtige loesning."
Og har rettet alle  $id til $ID, men stadig uden held.
Avatar billede kimmys Nybegynder
28. juli 2015 - 00:01 #8
Nå men jeg har fundet en anden kode der ser ud til at virke, så den vil jeg lige teste videre med.

<?php include("header.php");
    if (! isset($_GET['page']))
    {
        include('./home.php');

    } else {   
        $page = $_GET['page']; 
        switch($page)
        {
            case 'page_h864349_categoryID_355676f63556':
                include('side1.html');
                break; 
            case 'services':
                include('side2.html');
                break; 
            case 'gallery':
                include('./gallery.php');
                break;     
            case 'photos':
                include('./photos.php');
                break; 
            case 'events':
                include('./events.php');
                break; 
            case 'contact':
                include('./contact.php');
                break;
        }
    }

   
    include("tilindex.php");
    ?>
   
    <li><b>
<a id="link1" href="index3.php?page=page_h864349_categoryID_355676f63556"><font size="4">
M E M B E R S </font></a></b></li>

<li><b>
<a id="link1" href="index3.php?page=services"><font size="4">
M E M B E R S </font></a></b></li>
Avatar billede arne_v Ekspert
28. juli 2015 - 01:59 #9
Hvis:

$page = $_GET['page'];
switch($page)

virker saa boer:

$page = $_GET['ID'];
switch($ID)

ogsaa virke (forudsat at der kaldes med ?ID= og ikke ?page= i det sidste tilfaelde).
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

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