PHP-val menü/fejléc hozzáadása minden oldalhoz. Kódot kiegészítené valaki?
Már korábban is kérdeztem, és most a pontos kód érdekelne, mert tetszik az elképzelés, és megvalósítanám
Tehát Azt szeretném ha az oldalam URLje ( [link] után az oldal_neve részre beírok valamit akkor hozza be a beírt nevű .html oldalt. Kis segítséggel már van egy olyan kódom hogy:
<?php
$oldal=$_GET["oldal"];
if ($oldal=="index")
echo "1";
elseif ($oldal=="index2")
echo "2";
else
echo "3";
?>
Ezzel a módszerrel az a gond hogy ha több száz oldalt tartalmaz a honlapom akkor elég sok elseifet kéne írogatnom. A másik problémám pedig hogy nem egy a szerveren lévő .html oldalt hanem az általam a kódba beírt dolgot jelenítené meg. Megköszönném ha valaki előtudna állni egy jó kis kóddal.
Még esetleg arra lennék kíváncsi hogy olyan módszer nincs e hogy a meglévő .html oldal címének beírása után (pl valami.hu/auto.html) automatikusan magától rárakja a menüt és a fejlécet. gondolom ez utóbbi nehezebb, ha egyáltalán megvalósítható.
Frames megoldások sajnos nem jók, jelenleg is azt használok, és különböző képernyőméreteken problémás, valamint HTML5 nem támogatja.
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
Kell egy tömb, ebben lesznek az oldalaid:
$oldalak = array(
'' => 'fooldal.php',
'register' => 'register.php',
'login' => 'login.php',
'browse' => 'browse.php',
'sajat' => 'profil.php',
'view' => 'view.php',
'privat' => 'privat.php'
);
Az index.php oldal megfelelő részébe elhelyezed:
if(isset($_GET['page']))
{
if(!empty($oldalak[$_GET['page']]))
@include ('pages/'.$oldalak[$_GET['page']]);
else
echo "A megadott oldal nem található a szerveren.";
} else include('pages/fooldal.php');
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
Én a menüt és a fejlécet úgy csinálnám, hogy készítenék egy eljárást (function), melybe a menü-t és a fejlécet teljesen kidolgoznám, utána ezt (ami akár egy külön php fájlban van) beilleszteném minden oldalra, tehát pl.
fejlec.php tartalma:
<?php
function fejlec()
{
//ez itt a fejléc, ezután jön a tartalom
}
?>
valamimas.php tartalma:
<?php
require_once 'fejlec.php';
fejlec();
echo "ide a tartalom jön";
?>
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
az utolsóval egyet értek, de a másik formulát is leírnám, ha a ?oldal=page formátum a nyerő
<?php
$oldal = $_GET['oldal'].'.php';
if(file_exsists('pages/'.$oldal))
require_once('pages/'.$oldal);
else
require_once ('pages/default.php');
?>
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!