Salve a tutti,
ho un problema con uno script php con cui ho provato a parsare un documento xml.
In realtà lo script funziona bene solo che la soluzione adottata non era quello che volevo.
Descrivo lo script:
1. fa il load di un file xml (a seconda della lingua il load del file cambia)
2. le voci del file xml restituite dopo che questo è stato parsato dal file menu.php vengono poi convogliate in un altro file, header.php, tramite inclusione ove si trovano i parametri css per la formattazione del menu.
Essendo che la formattazione del menu in questo caso ha poca importanza posto solo il file xml (l'altro è uguale cambiano solo le voci tradotte ed il nome) ed il file menu php.
Cosa mi interessa sapere:
vorrei avere un solo file xml dove le voci invece di essere ad esempio "Chi Siamo" siano "_chi". Tale valore dovrebbe essere pio definito da un file es linguait.php o linguaen.php (a seconda del caso).
ecco i codici
..........................file xml............................
..............................................file php.....................................................
...............................................................................
Altra cosa che non sono riuscito a capire:
all'inizio nel file php per il cambio lingua ho tenta di utilizzare l'istruzione switch inserendovi all'interno
non c'è stato verso di farlo funzionare nel senso che quando appariva il menu in italiano cliccavo sul tasto inglese per cambiare e lo faceva ma quando cliccavo su italiano per ritornare alla nostra lingua non ne voleva sapere.
Vi ringrazio in anticipo per le risposte. Enrico
ho un problema con uno script php con cui ho provato a parsare un documento xml.
In realtà lo script funziona bene solo che la soluzione adottata non era quello che volevo.
Descrivo lo script:
1. fa il load di un file xml (a seconda della lingua il load del file cambia)
2. le voci del file xml restituite dopo che questo è stato parsato dal file menu.php vengono poi convogliate in un altro file, header.php, tramite inclusione ove si trovano i parametri css per la formattazione del menu.
Essendo che la formattazione del menu in questo caso ha poca importanza posto solo il file xml (l'altro è uguale cambiano solo le voci tradotte ed il nome) ed il file menu php.
Cosa mi interessa sapere:
vorrei avere un solo file xml dove le voci invece di essere ad esempio "Chi Siamo" siano "_chi". Tale valore dovrebbe essere pio definito da un file es linguait.php o linguaen.php (a seconda del caso).
ecco i codici
..........................file xml............................
HTML:
<testo>
Home
<collegamento>
index.php
</collegamento>
</testo>
</menu>
<menu id='2'>
<testo>
Chi siamo
<collegamento>
#
</collegamento>
<subtesto id='1'>
Missione
<subcollegamento>
missione.php
</subcollegamento>
</subtesto>
<subtesto id='2'>
Visione aziendale
<subcollegamento>
vis_az.php
</subcollegamento>
</subtesto>
<subtesto id='3'>
Valori d'impresa
<subcollegamento>
val_imp.php
</subcollegamento>
</subtesto>
</testo>
</menu>
<menu id='3'>
<testo>
English
<collegamento>
header.php?lang=eng
</collegamento>
</testo>
</menu>
</navigatore>
PHP:
<?php
$lang = @$_GET['lang'];
if(isset($lang)== "eng"){
$xml=simplexml_load_file('menuen.xml');
}
else {
$xml = simplexml_load_file('menuit.xml');
}
echo '<div id="menu"><ul>';
$primo= $xml->menu;
foreach($primo as $menu){
$coll=$menu->testo->collegamento;
$testo=$menu->testo;
echo '<li><a href="'.$coll.'"class="green">'.$testo.'</a><ul>';
foreach ($menu->testo->subtesto as $subtesto)
{
$subcoll=$subtesto->subcollegamento;
echo '<li><a href="'.$subcoll.'"class="green">'.$subtesto.'</a></li>';
}
echo '</ul>';
}
echo '</li></ul></div>';
?>
Altra cosa che non sono riuscito a capire:
all'inizio nel file php per il cambio lingua ho tenta di utilizzare l'istruzione switch inserendovi all'interno
PHP:
case "eng": $xml=simplexml_load_file('menuen.xml');
case "ita": $xml=simplexml_load_file('menuit.xml');
default: $xml=simplexml_load_file('menuit.xml');
Vi ringrazio in anticipo per le risposte. Enrico
Ultima modifica di un moderatore: