Problema link

emanuelevt

Utente Attivo
24 Giu 2009
298
0
0
Questo è il codice tramite il quale inseisco i link.

PHP:
$dove_sono=basename($_SERVER['PHP_SELF']);

$array_nome_link=array("Home","Prodotti", "Bacheca" ,"Servizi" , "Contatti");
$corrispondenza=array("index.php","prodotti.php", "bacheca.php", "servizi.php", "contatti.php");
$linea='|';


for($i=0; $i<count($array_nome_link); $i++){

	
if($i==count($array_nome_link)-1){$linea='';}

	if($dove_sono==$corrispondenza[$i]){echo "<a href='".$corrispondenza."' class='active'>". $array_nome_link[$i] ."</a>" . $linea;}
	else{
	echo "<a href='".$corrispondenza[$i] ." '>" . $array_nome_link[$i] . "</a>" .$linea;
	}

}

Però mi presenta un problema:

- Se l'utente spinge due volte lo stesso link - compare la pagina con persorso/Array e ovviamente la pagina non viene trovata
 
cerca di essere più chiaro.
"due volte" intendi doppio click o alla seconda visita della pagina?

comunque, il codice sembra corretto.
però ti consiglio un paio di cose:
1) cerca di non usare l'apostrofo (') per marcare gli attributi in HTML e fai attenzioni agli spazi.
2) se la voce del menù è attiva, sarebbe meglio che questa non sia un link. facendo così ti risolvi anche il tuo problema!

ti evidenzio in rosso ciò che ho scritto al punto 1.
PHP:
if($dove_sono==$corrispondenza[$i]){echo "<a href=[COLOR="red"]'"[/COLOR].$corrispondenza.[COLOR="red"]"'[/COLOR] class='active'>". $array_nome_link[$i] ."</a>" . $linea;}
    else{
    echo "<a href='".$corrispondenza[$i] .[COLOR="red"]" '[/COLOR]>" . $array_nome_link[$i] . "</a>" .$linea;
    }

io lo scriverei così:
PHP:
if($dove_sono==$corrispondenza[$i]){
	echo "<span class=\"active\">". $array_nome_link[$i] ."</span>" . $linea;
}else{
	echo "<a href=\"".$corrispondenza[$i] ."\">" . $array_nome_link[$i] . "</a>" .$linea;
}
 

Discussioni simili