link uit lijst weergeven in standaard lay-out

Status
Niet open voor verdere reacties.

Renee123

Gebruiker
Lid geworden
8 feb 2009
Berichten
65
Ik ben al een tijd aan het prutsen/googlen, maar heb helaas toch jullie hulp nodig...
Ik heb een pagina met een lijst van 6 nieuwsitems (noem ze maar even item1 t/m item6). De kale tekst bij elk nieuwsitem staat in een php bestand (dus in 6 verschillende bestanden => item1.php t/m item6.php). Wat ik nou wil is dat als er op een nieuwsitem in de lijst geklikt wordt, dat de tekst dan weergegeven wordt. Nou is dit niet heel moeilijk te klussen (die lijst opbouwen met <a href="item1.php">Item1</a>). Maar het probleem zit 'm in het volgende: de items moeten weergegeven worden in een standaard lay-out die ik in een ander php bestand heb staan, namelijk lay-out.php (die bevat nu even voor het gemak alleen een include naar een header en een footer). Als ik dus op item1 klik in de lijst, wil ik dat er gelinkt wordt naar lay-out.php en dat die er dan als volgt uit ziet:

PHP:
 <?php include("header.php"); ?>
[I]Hier moet dan de tekst uit item1.php komen[/I]
 <?php include("footer.php"); ?>
De include naar de header en footer zijn dus de standaardgedeelten van lay-out.php, maar de tekst die in het schuingedrukte gedeelte weergegeven wordt is dus afhankelijk van op welk item geklikt wordt.


Anders uitgelegd: ik wil dus iedere keer lay-out.php gebruiken als er op een item in de lijst geklikt wordt, maar de tekst is afhankelijk van op welk item geklikt wordt in de lijst. Het liefst wil ik dan ook nog gewoon als URL weergegeven zien: website.nl/lay-out.php.

Iemand een idee hoe ik dit kan doen? Ik heb het vast heel krom uitgelegd, daarom is googlen hierop ook best lastig :p, maar als het niet duidelijk is hoor ik het wel!
 
Dan gebruik je als link
HTML:
<a href="lay-out.php?item=1">Item1</a>
of
HTML:
<a href="lay-out.php?pagina=item1">Item1</a>

In lay-out.php zet je dan zoiets:
PHP:
<?php include ("header.php");
$paginas = array("item1.php", "item2.php"); // etc.
if (in_array("item" . $_GET['item'] . ".php", $paginas)) // of if (in_array($_GET['pagina'] . ".php", $paginas))
{
  include ("item" . $_GET['item'] . ".php"); // of include ("$_GET['pagina'] . ".php");
}
include("footer.php"); ?>
 
Ok, nice!!! Dat werkt :)
Ik heb gekozen voor die 2e optie, dus
PHP:
<a href="lay-out.php?pagina=item1">Item1</a>

en
PHP:
<?php include ("header.php");
$paginas = array("item1.php", "item2.php"); // etc.
if (in_array($_GET['pagina'] . ".php", $paginas))
{
  include ("$_GET['pagina'] . ".php");
}
include("footer.php"); ?>
Alleen had je bij de
PHP:
include ($_GET['pagina'] . ".php");
een aanhalingsteken te veel staan voor de $_GET. Maar dat was natuurlijk om mij scherp te houden :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan