problema php e xml

encrimi

Nuovo Utente
26 Set 2010
3
0
0
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............................
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>
..............................................file php.....................................................
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');
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
 
Ultima modifica di un moderatore:

encrimi

Nuovo Utente
26 Set 2010
3
0
0
Chiedo scusa per non aver usato i tag di codice e ringrazio per la modifica.
Colgo l'occasione per un'ulteriore specificazione: ho tentato inutilmente di definire a seconda della lingua le voci contenute del file xml e provenienti dal ciclo foreach.
 

encrimi

Nuovo Utente
26 Set 2010
3
0
0
Mi rispondo da solo per l'ultima questione: quella dello switch.
Mi sono dimenticato di registrare la variabile di sessione :)

Up per la prima
 
Discussioni simili
Autore Titolo Forum Risposte Data
S Problema in PHP per invio file XML - RISOLTO- PHP 8
D [PHP] problema con xml PHP 13
M problema lettere accentate da file xml a php PHP 6
L xml e php. Problema con i nodi PHP 4
H Piccola applicazione per News con Php, Xml e Flash: problema ordinamento. XML 0
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
D problema php mysql PHP 1
D problema php mysql PHP 1
Z Problema di sincronizzazione PAYPAL con PHP PHP 1
A Problema checkout carrello php PHP 2
G Problema caricamento tabelle MySql da PhP PHP 0
M Problema con php per calcolo costo percentuale PHP 7
O Problema Formmail in PHP su Aruba PHP 0
WebmasterFioriniAndrea Chat e php [problema] PHP 3
L [PHP] Problema con Telegram PHP 1
WebmasterFioriniAndrea [PHP] Problema che non mi fa vedere niente PHP 2
A [PHP] Problema query insert [RISOLTO] PHP 14
N [Apache] problema con estensione php Apache 0
C [PHP] Problema con download file PHP 0
M [PHP] Problema con preg_match PHP 1
gandalf1959 [PHP] problema con l'utilizzo di Header PHP 3
K [RISOLTO] Problema Griglia Php+Mysql PHP 13
M [PHP] Problema con query select PHP 2
L Problema jQuery validation AJAX (PHP 7) PHP 6
L Problema funzione mail() PHP PHP 3
S [PHP] Problema con istruzione "use" PHP 23
A Problema PHP PHP 1
T [php] problema creazione query select-where PHP 5
M [PHP] problema if PHP 3
L [PHP] Problema su codice o server PHP 5
T [PHP] problema maggiore e minore PHP 4
Cosina [PHP] fwrite problema con le parole accentate PHP 9
M [PHP] Problema search form PHP 3
F [PHP] Problema con number_format PHP 3
L [PHP] problema count messo in una funzione. PHP 1
P [PHP] Progettino CRUD di esercitazione. Problema su $_FILE. PHP 9
trattorino [PHP] problema entrata immagini insert PHP 1
C Apache Cordova problema con php Programmazione 1
trattorino problema raccapricciante php conteggio query PHP 4
T PHP+MYSQL: problema con quelle maledette lettere accentate... PHP 5
F [PHP] Problema con array multidimensionale PHP 4
F Problema con pagine login in PHP PHP 2
M [PHP] Problema script ricezione e invio posta... PHP 1
Kolop [RISOLTO][PHP] Problema Pagination PHP 2
C [PHP] Problema Invio Email Elseif PHP 2
A [PHP] Problema invio mail con funzione mail() PHP 3
gandalf1959 problema con la codifica caratteri accentati e speciali tra php e mysql PHP 3
L [PHP] Problema Script 'Not Found' PHP 4
webmachine [PHP][MYSQL] Problema con le SELECT PHP 5
alessandra86 [PHP] Popolamento database con form ricorsivi - problema array (foreach ) PHP 5

Discussioni simili