PHP: evidenziare la pagina corrente in modo dinamico - help

glm1986ITALY

Moderatore
Membro dello Staff
MOD
9 Apr 2009
1.312
16
38
38
Vercelli
www.webepc.it
Ho trovato questa guida:
http://www.paitadesign.com/blog/php...e-la-pagina-corrente-nel-menu-di-navigazione/

Solo che ho un problema!

Il codice indicato
Codice:
[== php ==]
<?php
    $menu=file_get_contents("inc/main_nav.php");
    $base=basename($_SERVER['PHP_SELF']);
    $menu=preg_replace("|<li><a href=\"".$base."\">(.*)</a></li>|U", "<li class=\"current\">$1</li>", $menu);
    echo $menu;
?>

Fa "stampare" un codice html:
Codice:
[== html ==]
<li class="current">

Ma nel mio caso ho bisogno che si crei una "stringa" come questa:
Codice:
[== html ==]
  <li><a href="index.php" class="current">Home
Page</a></li>

è fattibile?

Grazie
 
Si anche se nel mio caso si chiama "topmenu.php"

PHP:
<ul>
  <li><a href="index.php">Home
Page</a></li>
  <li><a href="chi_siamo.php">Chi Siamo</a></li>
  <li><a href="dove_siamo.php">Dove Siamo</a></li>
  <li><a href="prodotti.php">Prodotti</a></li>
  <li><a href="catalogo.php">Catalogo</a></li>
  <li><a href="condizioni.php">Condizioni</a></li>
  <li><a href="contatti.php">Contatti</a></li>
</ul>
 
Prova a modificare questa riga:
PHP:
$menu=preg_replace("|<li><a href=\"".$base."\">(.*)</a></li>|U", "<li class=\"current\">$1</li>", $menu);
Con questa:
PHP:
$menu = preg_replace("|<li><a href=\"{$base}\">(.*)</a></li>|U", "<li a href=\"{$base}\" class=\"current\">$1</li>", $menu);
 
No purtroppo non funge... strano :(

*webepc.it/pdf-commerce/chi_siamo.php

Vedi cosa succede: la scritta della pagina "attiva" si "sposta" a destra e sparisce dalla grafica principale :crying:
 

Discussioni simili