menu include voor CSS

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Stef Segers

Stef Segers

08/01/2008 16:29:00
Quote Anchor link
Hey allen,

Ik heb een website gemaakt welke nu in html is, maar ook in php omgezet kan worden. Ik wil namelijk het volgende. De website wil ik wanneer ik van pagina wissel het menu een active id mee geven. Als je op Contact klikt en op de contact pagina staat zou ik graag willen dat de contact menu item ook actief is.

Dit kan je dus in elke pagina doen maar wanneer er een kleine aanpassing in het menu moet doen kun je alle pagina's doorlopen.
Is er niet een makkelijk trucje om een bijvoorbeeld php pagina te includen met het menu welke aan de URL kan zien welke link actief moet worden gezet?

Ik hoop dat ik mijn vraag goed heb omschreven anders hoor ik dat wel.

Stef
 
PHP hulp

PHP hulp

23/11/2024 15:42:36
 
Jacco Engel

Jacco Engel

08/01/2008 16:31:00
Quote Anchor link
in je css a:active style meegeven?
 
Stef Segers

Stef Segers

08/01/2008 16:33:00
Quote Anchor link
Hoi Jacco,

Ik heb inderdaad een a:active ... maar probleem is dat ik dus dynamisch dit wil oplossen.
Zoals ik omschreef wil ik een menu.php includen welke op elke pagina hetzelfde is. Wanneer op contact klik moet dus dynamische in menu.php contact active worden gezet.

Hoe doe ik dat
 
Joren de Wit

Joren de Wit

08/01/2008 16:40:00
Quote Anchor link
Je zou afhankelijk van op welke pagina je je bevindt, het betreffende menu element een aparte class mee kunnen geven. Dus bijvoorbeeld een class 'active' waarin je de style van het actieve menu-element vastlegt.

Dit kun je gewoon in PHP doen met een if/else constructie...

ps. Dus stel dat je menu opgebouwd is uit <li> elementen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<ul>
    <li <?php if($pagina == 'contact') echo 'class="active"'; ?>>Contact</li>
    <li etc...></li>
</ul>
Gewijzigd op 01/01/1970 01:00:00 door Joren de Wit
 
Stef Segers

Stef Segers

08/01/2008 16:41:00
Quote Anchor link
Hoi Bianche,

Heb je een voorbeeldje voor mij als newbie?

Stef
 
Joren de Wit

Joren de Wit

08/01/2008 16:43:00
Quote Anchor link
Zie de ps van mijn vorige post ;-)

Natuurlijk zul je nog wel even moeten kijken hoe je gaat bepalen op welke pagina je bent en hoe je dus aan de waarde van $pagina komt.
 
Stef Segers

Stef Segers

08/01/2008 16:50:00
Quote Anchor link
Hey Bianche,

Ik was er wat vroeg bij. Ik heb je code gezien en dat ziet er inderdaad logisch uit. Maar je vraag hoe kom je aan $pagina is inderdaad een hele goede.

Hoe kom je daaraan?


Dit is wat ik tot nu toe heb

<ul>
<li
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php if($pagina == 'Homepage') echo 'class="active"'; ?>
><a href="index.php">Homepage</a></li>
<li
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php if($pagina == 'Over Meander') echo 'class="active"'; ?>
><a href="overons.php">Over Meander</a></li>
<li
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php if($pagina == 'Jaarverslagen') echo 'class="active"'; ?>
>><a href="jaarverslagen.php">Jaarverslagen</a></li>
<li
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php if($pagina == 'Projectmanagement') echo 'class="active"'; ?>
>><a href="projectmanagement.php">Projectmanagement</a></li>
<li
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php if($pagina == 'Advies') echo 'class="active"'; ?>
>><a href="advies.php">Advies</a></li>
<li
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php if($pagina == 'Training') echo 'class="active"'; ?>
>><a href="training.php">Training</a></li>
<li
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php if($pagina == 'Contact') echo 'class="active"'; ?>
>><a href="contact.php">Contact</a></li>
</ul>


S.
Gewijzigd op 01/01/1970 01:00:00 door Stef Segers
 
Joren de Wit

Joren de Wit

08/01/2008 16:55:00
Quote Anchor link
Plaats even tags om je code, dan wordt het wat leesbaarder.

Bepalen van $pagina kun je in jouw geval waarschijnlijk doen door naar de url te kijken, oftewel naar het script dat aangeroepen is. Dus bijvoorbeeld met behulp van de variabele $_SERVER['SCRIPT_NAME'], daar moet je de huidige pagina wel uit kunnen halen.
 
Stef Segers

Stef Segers

08/01/2008 16:58:00
Quote Anchor link
Hey Bianche,

Ik zie idd dat mijn script helemaal verknoeid is. Er is geen help waarin staat hoe ik een TAG om mijn code kan zetten anders had ik dat wel even gedaan.

Even nog over dat $_Server(script) ding.
Ik begrijp m nog niet helemaal hoe ik dat moet programmeren.

Ik weet iets van $_GET maar verder kom ik niet.
 
Pieter Joordens

Pieter Joordens

08/01/2008 16:59:00
Quote Anchor link
Hey Stef

als je deze pagina als soort overall header hebt, kun je de variabele ook zetten net voordat je de deze pagina include();
bv:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$pagina
= "contact";
include('menu.php');

//de code van wat er bij contact staat

?>


Grtz Pieter

ps lees je berichten ff :P
 
Joren de Wit

Joren de Wit

08/01/2008 17:00:00
Quote Anchor link
Het ging om de tags. Ik zal even een klein voorbeeldje voor je maken...

edit: zoiets dus:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
$aExpl
= explode('.', $_SERVER['SCRIPT_NAME']);
$sScriptnaam = substr($aExpl[0], 1);

echo 'Je bevindt je op pagina: '.$sScriptnaam;
?>

Met de variabele $sScriptnaam kun je nu kijken op welke pagina je je bevindt.

ps. De oplossing van Pieter is natuurlijk nog makkelijker :-)
Gewijzigd op 01/01/1970 01:00:00 door Joren de Wit
 
Pieter Joordens

Pieter Joordens

08/01/2008 17:06:00
Quote Anchor link
haha tnx blanche =D
 
Stef Segers

Stef Segers

08/01/2008 17:07:00
Quote Anchor link
kijk hier heb je wat aan... Pieter's script werkt goed... maar die van Bianche is een mooi vervolg daarop... Even toepassen.. volgens mij moet ik hier wel mee uit de voeten komen.

SUPER BEDNAKT!!!
Gewijzigd op 01/01/1970 01:00:00 door Stef Segers
 
Nicoow Unknown

Nicoow Unknown

08/01/2008 17:47:00
Quote Anchor link
het is blanche niet bianche,
ik zat eerst te lezen, en toen dacht ik, wtf is bianche, en toen las ik opnieuw, en toen heb ik maar bedach dat het blanche moest zijn, of niet dan? :P
Beetje respect voor hem hea :P
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.