Avatar billede ole_hj Juniormester
18. marts 2006 - 10:01 Der er 10 kommentarer og
1 løsning

hent kode ved hjælp af index.php?menu=101

Hej eksperter

Jeg sider og roder med lidt php og jeg kunne godt tænke mig at samle det hele på en side så at når jeg klikker på et link i menuen så kommer det ud i main
Så at mit link ser sådan ud index.php?menu=101
Og 101 bliver hentet og sat ind under main

index kode
<html>
<head>
<link rel="stylesheet" rev="stylesheet" href="style.css" />
<title>index</title>
<links
<head>

<body>

<div id="menu">
<div id="h1"><p><span><a href="index.php">Forsiden</a></span>
<br><span><a href="side1.php">side1</a></span>
<span><a href="side2.php">side2</a></span></p></div>
</div>

<div id="main">
forside
</div>


</body>

</html>

side1
<html>
<head>
<link rel="stylesheet" rev="stylesheet" href="style.css" />
<title>index</title>
<links
<head>

<body>

<div id="menu">
<div id="h1"><p><span><a href="index.html">Forsiden</a></span>
<br><span><a href="side1.html">side1</a></span>
<span><a href="side2.html">side2</a></span></p></div>
</div>

<div id="main">
side1
</div>


</body>

</html>

side2
<html>
<head>
<link rel="stylesheet" rev="stylesheet" href="style.css" />
<title>index</title>
<links
<head>

<body>

<div id="menu">
<div id="h1"><p><span><a href="index.html">Forsiden</a></span>
<br><span><a href="side1.html">side1</a></span>
<span><a href="side2.html">side2</a></span></p></div>
</div>

<div id="main">
side2
</div>



</body>

</html>

og filerne skal jo ændres til .php
Avatar billede zynzz Praktikant
18. marts 2006 - 10:18 #1
if($_GET[menu] == 101) {
include("menu_101.php");
}


noget i den stil ?
Avatar billede jakobdo Ekspert
18. marts 2006 - 10:27 #2
og bedre overblik:
switch($_GET['menu'])
{
  case "101":
    include('menu_101.php');
    break;
  case "102":
    include('menu_102.php');
    break;
  default:
    include('standard.php');
}
Avatar billede ole_hj Juniormester
18. marts 2006 - 12:06 #3
Hvis jeg bruger include så henter den fra en ekstern fil, men jeg vil gerne havde det til at ligge i min index fil så jeg har så få filer til at ligge.
Avatar billede jakobdo Ekspert
18. marts 2006 - 12:11 #4
Så retter du:
include('menu_101.php');
til:
echo "Hej her kommer koden for siden: 101";
echo "<hr>blabla...";
osv....
break;

Altså så indsætter du bare kode i stedet for include().
Avatar billede ole_hj Juniormester
18. marts 2006 - 13:09 #5
Koden virker fint, men når jeg indsætter min kode som indeholder en tabel og <div id="" </div> så får jeg en fejlmeddelelse.
Avatar billede jakobdo Ekspert
18. marts 2006 - 16:15 #6
Så har du nok en fejl i det kode du indsætter.

Meget lille eksempel:

<?php

switch($_GET['side'])
{
case "1":
echo "HEJ DU ER PÅ SIDE 1";
break;
case "2":
echo "HEJ DU ER PÅ SIDE 2";
break;
default:
echo "HEJ DU ER PÅ STANDARD SIDEN";
}

?>

Gem den som f.eks. fil.php, og test den med: fil.php, fil.php?side=1 og fil.php?side=2
Avatar billede ole_hj Juniormester
18. marts 2006 - 16:33 #7
hvad er der galt med den her kode

<html>
<head>
<link rel="stylesheet" rev="stylesheet" href="style.css" />
<title>index</title>
<head>

<body>

<div id="logo">
</div>

<div id="ramme">
</div>


<div id="top">
</div>

<div id="menu">
<div id="h1"><p><span><a href="index.php">Forsiden</a></span>
<br><span><a href="side1.php?menu=101">side1</a></span>
<span><a href="side2.php?menu=102">side2</a></span></p></div>
</div>

<div id="main">
<?php
if($_GET[menu] == 101) {
echo "<table border="0" width="100%">
        <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
        <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
        </table>";
echo "<hr>blabla...";
break;

if($_GET[menu] == 102) {
echo "<table border="0" width="100%">
        <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
        <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
        </table>";
echo "<hr>blabla...";
break;

?>
</div>

<div id="bund">
</div>

</body>
</html>
Avatar billede jakobdo Ekspert
18. marts 2006 - 16:44 #8
Fejlen er:
echo "<table border="0" width="100%">
....
</table>";

Det korrekte skal være:
echo "<table border=\"0\" width=\"100%\">
....
</table>";

eller:

echo '<table border="0" width="100%">
....
</table>';

eller 2 andre måder! :o)
Hvor du bruger ' og \' eller " og '
Avatar billede ole_hj Juniormester
18. marts 2006 - 16:54 #9
Tak jakobdo det virker hvis du lige lægger et svar så få du point
Avatar billede jakobdo Ekspert
18. marts 2006 - 16:58 #10
Svar!
Avatar billede jakobdo Ekspert
18. marts 2006 - 23:51 #11
Takker for point!
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