PHP include file vraagje
Is het mogelijk om een include page te laten weten op welke pagina deze wordt opgevraagd ?
Bijvoorbeeld:
Pagina "Test.php" wordt geladen door een klant
op pagina "Test.php" is Data.php included
Data.php krijgt bericht dat verzonden wordt bij het laden van pagina Test.php
Dat test.php zijn gegevens opvraagt
De bedoeling is dat ik de bestanden in Data.php kan aanpassen aan de pagina die het opvraagt.
Dit lijkt het niet te doen:
Test.php
Data.php
]
Gewijzigd op 06/08/2014 20:25:01 door Jaimy A
Overigens is het zo dat variabelen altijd mee overgenomen vanuit de include en visa-versa
en data.php zou onmiddelijk moeten weten dat hij op test.php wordt geladen zodat de tekst kan aangepast worden zodat de correcte tekst wordt weergeven
Code (php)
data.php:
Resultaat
Jaimy-Ger-Ik ben overschreven-phphulp
include is niets meer dan het samenvoegen van 2 php bestanden
Laat niet zien door welke pagina hij wordt included maar Laat zien welke pagina door de browser opgevraagd is.
Toevoeging op 07/08/2014 00:39:08:
Vraag me wel af waarom je dit wilt en of je wel goed bezig bent..
Gewijzigd op 07/08/2014 00:38:05 door Frank Nietbelangrijk
Ik zou gewoon voor iedere 'view' een apart bestand aanmaken. In die bestanden zou ik doorverwijzen naar andere bestanden.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// index.php
<?php view('start'); ?>
<?php view('header'); ?>
<h1>Welkom op mijn pagina</h1>
<?php view('footer'); ?>
<?php view('end'); ?>
// start.php
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
</head>
<body>
// header.php
<div>Mijn header</div>
// footer.php
<div>Mijn footer</div>
// end.php
</body>
</html>
<?php view('start'); ?>
<?php view('header'); ?>
<h1>Welkom op mijn pagina</h1>
<?php view('footer'); ?>
<?php view('end'); ?>
// start.php
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
</head>
<body>
// header.php
<div>Mijn header</div>
// footer.php
<div>Mijn footer</div>
// end.php
</body>
</html>
Gewijzigd op 07/08/2014 08:26:46 door Frank Nietbelangrijk
Op pagina waneer ik op pagina $NavLink1 wordt deze in een andere kleur gezet.
Maar waneer ik naar een andere pagina bijvoorbeeld $NavLink2 moet deze in een andere kleur worden gezet door middel van de class=current. maar ik wil heel mijn brok code in 1 pagina zetten en dan wanneer je een pagina laadt de brok code laten lezen en php laten vast stellen welke pagina de huidge is en deze class current" geven, ik kan enkel geen $pagina = home; doorsturen naar mijn included file tijdens het laden van de home pagina dus komt $pagina altijd leeg aan bij mijn pagina waar mijn brok code instaat
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
$HeaderNav = '
<div id="header">
<div class="row-2">
<li><a href="'.$NavLink1.'" class="current">'.$Naam1.'</a></li>
<li><a href="'.$NavLink2.'">'.$TiteL5.'</a></li>
<li><a href="'.$NavLink3.'">'.$TiteL11.'</a></li>
<li><a href="'.$NavLink5.'">'.$TiteL13.'</a></li>
<li><a href="'.$NavLink4.'">'.$TiteL12.'</a></li>
<li><a href="#nogo">Verhuur</a></li>
</div>
</div>';
?>
<div id="header">
<div class="row-2">
<li><a href="'.$NavLink1.'" class="current">'.$Naam1.'</a></li>
<li><a href="'.$NavLink2.'">'.$TiteL5.'</a></li>
<li><a href="'.$NavLink3.'">'.$TiteL11.'</a></li>
<li><a href="'.$NavLink5.'">'.$TiteL13.'</a></li>
<li><a href="'.$NavLink4.'">'.$TiteL12.'</a></li>
<li><a href="#nogo">Verhuur</a></li>
</div>
</div>';
?>
Dan kun je toch controleren of $pagina een geldige waarde heeft? Zo ja --> voeg daar de class aan toe. Zo niet, voeg dan de class toe aan home.
Bepaalde variabelen moet je aan je view meegeven. Dat zijn onder meer de titel van de pagina maar ook inderdaad de huidige 'route' zodat je kunt bepalen aan welke link er een ander kleurtje moet komen.