Newsgroup: it.lavoro.professioni.webmaster
Titolo: Siti multilingua

dovendo realizzare un sito in tre lingue (oltre all'italiano)
mi consigliate di realizzare 4 versioni differenti delle singole pagine
index_it.asp
index_fr.asp
index_de.asp
index_uk.asp
o all'interno della pagina utilizzare un selec
select
case lang="it"
    response.write("benvenuto")
case lang="uk"
    response.write("welcome")
etc. etc.
sia la prima che la seconda soluzione mi sembrano fetecchie
sarà il caldo ma non mi viene in mente altro
le pagine del sito saranno circa un ventina
grazie per i suggerimenti

 ha scritto nel messaggio 
news:42de2c0b$0$320$5fc...@news.tiscali.it...

Non fai prima a mettere tutto in un database e richiamare le stringhe di 
volta in volta nel template?
Almeno cosi non ti porrai il problema delle 3, 4, 5, 10, 20, 100 lingue, e 
non dovrai modificare ogni volta tutte le pagine per 3, 4, 5, 10, 20, 100 
lingue.
Cooper.
-- 
BlueWare WebStudio
 [web:] 
http://www.blueware.it
 [msn:] 
coo...@blueware.it
 [icq:] 146781935 

 o all'interno della pagina utilizzare un selec
Io, per poche pagine, ho utilizzato directory diverse, con all'interno
la cartella immagini per quella lingua, mentre le immagini in comune
sono a parte.. quindi:
root
  |
  |--images
  |
  |--it
  |  |--images
  |
  |--en
  |   |--images
  |
  |--fr
  |   |--images
Poi, i nomi dei files all'interno erano tutti uguali.. index, pagina1,
pagina2, ecc..
Poi ho fatto uno scriptino in javascript per cambiare lingua, che prende
l'url della pagina corrente (es.: it/pagina1.htm) e lo modifica nella
lingua scelta (es.: en/pagina1.htm).
In questo modo si poteva cambiare lingua al volo, indipendentemente
dalla pagina scelta..
Se vuoi ti mando lo script.. è una stupidaggine, ma è meglio pronto e
funzionante che farlo da capo :)
Ciao
-- 
Alan
"Ci spiace, ma il lucro e' indispensabile"
http://www.qreate.it

io sarei curioso di avere il tuo script... me lo spediresti per favore?
eliasamboT...@hotmail.com
Grazie


    response.write("welcome")
pertanto se potessi fornire una descrizione un po' piu' dettagliata...
Io sono piu' dell'idea di fare diverse directory come suggeriva
Alan, anche se col tuo metodo sembrerebbe ottimizzare meglio il lavoro
grazie V.

 mi consigliate di realizzare 4 versioni differenti delle singole pagine
Una soluzione potrebbe essere quella di mettere nelle singole pagine i 
contenuti (testi, foto, etichette) sotto forma di variabili es 
<%=TestoPagina%> e di mettere le logiche della lingua in un include, 
all'interno del quale avrai ad esempio degli if e potrai scegliere se 
andarti a prendere i valori da un DB o cablare tutto nel file. In genere io 
opto per soluzioni intermedie, con testi e foto databasizzati e le label 
cablate (avanti, indietro, regiatrati, etc..)
Ciao!
FelucaNera 


E' molto semplice, ti crei il template della tua paginetta html. e li 
anzichè inserire il contenuto, inserisci le variabili.
Poi lato server in base alla lingua scelta le variabili assumeranno il 
valore relativo prelevato dal db.
Il risultato finale sarà il sito internet composto dalle pagine html 
naturali, (non ripetute per ciascuna lingua) il cui contenuto varierà 
dinamicamente in base alla lingua scelta.
Per rendere l'idea immagina di avere:
File HTML:
<html>
    <body>
       <p> %VAR_TESTO1 </p>
    <body>
</html>
Lato server, mediante asp, o php rilevi la lingua X e quindi con un case 
assegni a %VAR_TESTO1 il contenuto relativo e lo trasferisci sul file HTML.
Per rilevare la lingua puoi usare diversi modi, da quello più grossolano del 
browser a quello del dns (qui si suppone che abbia definito un dns del tipo: 
it.tuodominio.ext, en.tuodominio.ext, ru.tuodominio.ext etc etc).
Insomma un po' di fantasia e si ovvia a questo problema.
La soluzione da me suggerita direi che sia fra quelle più efficienti in 
quanto a livello di html non dovrai apportare modifiche di alcun tipo al 
codice e a livello di codice lato server è sufficiente aggiungere una 
opzione in più al case per ogni lingua aggiuntiva.
Ovviamente a livello di database è sufficiente aggiungere una tabella in più 
per ciascuna lingua.
Il tutto diventa cosi abbastanza semplice e veloce anche se apparentemente 
più complesso e elaborato.
A livello di modifiche e o correzioni sul testo basta intervenire 
esclusivamente sul database senza influenzare il codice php o html.



[...]
provero' a seguire il tuo metodo,
cosi'...mi sembra davvero efficace
ciao V.

 ha scritto nel messaggio
news:dblgcp$h8m$1...@stargate1.inet.it...

Soluzione interessante ...
Grazie

 ha scritto nel messaggio
news:LdqDe.7798$B6.2...@twister1.libero.it...

Effettivamente la gestione tramite DB è sicuramente la più efficace, anche
se forse non così rapida.
Interessante anche il suggerimento di FelucaNera, si può gestire un po' di
robetta nei soliti include (header e footer)
Grazie dell'aiuto

 io sarei curioso di avere il tuo script... me lo spediresti per favore?
E' molto rudimentale, lo incollo qui, magari serve a qualcuno:
function cambialingua(lingua) {
        indirizzo=document.location.toString()
        nomefile=indirizzo.substr(indirizzo.lastIndexOf('/')+1)
        if (lingua == 'eng') { location.href = '../eng/' + nomefile; }
        if (lingua == 'ita') { location.href = '../ita/' + nomefile; }
}
il tutto lo chiami mettendo un pulsantino nel template della pagina, che
linka a javascript:cambialingua(eng) - se vuoi l'inglese..
Puoi vedere come funziona su 
www.villadellerondini.it
..
Ciao :)


 per ciascuna lingua.
Premetto che non ho mai affrontato praticamente la cosa, ma se ti crei una
tabella del tipo 
idlingua
lingua
e puoi la tabella dizionario che si occupa delle traduzioni del tipo
label
idlingua
testo
Non dovresti aver bisogno di modifiche strutturali al database per
inserire nuove lingue, infatti ti basta aggiungere un record alla tabella
che contiene le lingue e poi compilare il dizionario con le traduzioni.
Alla fine con una select dal dizionario prendi solo la lingua che ti
interessa filtrando l'ID.
Correggetemi se sbaglio, l' argomento mi interessa molto
Ciao
francesco