Visualizzazione dei risultati da 1 a 2 su 2

Discussione: sito multi lingua

  1. #1

    sito multi lingua

    Ciao a tutti..
    Forse chiedo info su un'argomento repetitivo; ho fatto una ricerca e non ho trovato qualcosa che sia vicino a quel che vorrei fare (la mia ignoranza così dice).
    Nella home page del mio sito ci sono 3 img di bandiere diverse: italiano, inglese e spagnolo
    ognuna linka corrispettivamente verso home.php, home_en.php e home_es.php. Questi file sono incaricati di caricare il body e il menu a seconda della lingua scleta. Adesso mi trovo nella necesità di mantere nella mia navigazione l'informazione su questa scelta per poter aprire file template a seconda della lingua. Penso di dover creare una sessione per la lingua; ma come si fa? Come viene utilizzata? Va creata una diversa ogni volta che scelgo un lingua diversa? Va aggiornata, distrutta e ricreata ogni volta?
    Posso creare il codice per tutto questo in una libreria e includerla in tutte le pagine del sito o solo il controllo va fatto sulle home.php
    Spero di essere stato chiaro.. vi prego datemi una mano.
    Grazie ragazzi!!

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    442
    esistono due modi per fare un sito multilingue o gestire il tutto con i file di testo o con idatabase; io uso i file di testo e mi trovo perfettamente bene.
    Ascolta:

    1° crei una cartella che chiami "lang"
    2°in questa cartella crei 5 file
    a) file.htaccess in cui andrai a scrivere Deny from all
    b) conf.php in cui andrai a scrivere

    Codice PHP:
    <?
    //Lingua di default
    $defaultlang "it";

    //Cartella dei file di lingua (relativa in base alla posizione del file di config)
    $langpath "lang";

    //Iniziamo ad avviare le sessioni (toglietelo se già le avete aperte)
    session_start();

    //Se esiste la variabile di sessione 'lingua'
    if (isset($_SESSION['lingua'])) {
        
    //Se esiste il parametro WEB inviato tramite GET 'lang'
        
    if(isset($_GET['lang'])) {
            
    //Effettuiamo qualche aggiusto per eventuali hack...
            
    $_GET['lang'] = str_replace("/",""trim(strtolower($_GET['lang'])));
            
    //Se esiste il file di lingua corrispondente al parametro GET richiesto
            
    if (is_file($langpath."/".$_GET['lang'].".php")) {
                
    //Imposta la sessione 'lingua' con la lingua scelta
                
    $_SESSION['lingua'] = $_GET['lang'];
            
    //Altrimenti
            
    } else {
                
    //Imposta la sessione 'lingua' in quella di default
                
    $_SESSION['lingua'] = $defaultlang;
            }
        }
    //Altrimenti
    } else {
        
    //Imposta la sessione 'lingua' in quella di default
        
    $_SESSION['lingua'] = $defaultlang;
    }
    //Finalmente includiamo il file di lingua giusto
    include($langpath."/".$_SESSION['lingua'].".php");
    ?>
    c)i file di lingua del tipo it.php de.php fr.php inm ognuno dei qualiu scriverai traducendo lo stesso testo nelle lingue da te scelto

    Codice PHP:
    <?
    //Impostiamo data, ora e giorni della settimana, insomma tutto in italiano
    setlocale(LC_ALL"it_IT");

    //Iniziamo quindi con i contenuti in italiano del sito
    //$trad['titolosito'] = "Radio Web Stereo - La tua abitudine pi&ugrave; bella";
    $trad['titoloblocco1'] = "L' Hotel è 
              aperto tutto l'anno grazie alla sua centrale posizione. Situato in un 
              viale alberato. A soli 100 metri potrete raggiungere le nostre spiaggie. 
              Il centro storico è a pochi minuti così pure ogni tipo di divertimento. 
              In inverno l'hotel offre servizio meublé, mentre in estate potrete ricevere 
              un servizio di pensione completa. La cucina è tipicamente romagnola, 
              con buffet di verdure ed è curata direttamente dalla titolare. Le camere 
              sono tutte dotate di servizi privati, balcone, telefono. L'ambiente 
              è semplice e familiare. "
    ;
    $trad['titoloblocco2']="Le camere confortevoli, silenziose e gradevolmente arredate offrono relax nel vero centro della città, TV e bagno in camera, grande gentilezza e disponibilità del personale sono una delle principali caratteristiche dell'ospitalità Genovese

    Ideale come base di partenza per le visite turistiche alla città o anche per una sosta breve prima di imbarcarsi sulle navi da crociera che fanno capolinea a Genova (Costa crociere, Celebrity cruise, MSC cruises) La sua vicinanza al centro finanziario e commerciale ne fanno anche un perfetto punto di appoggio durante la vostra sosta di affari.

    Già all'ingresso in Hotel potete immaginare le curiosità storiche di questa città tutta da scoprire.

    Il personale dell'albergo è a vostra disposizione per suggerire ed organizzare i vostri itinerari turistici. La confortevole terrazza sulla città antica e sul porto di Genova è il posto ideale per rilassarsi, leggere un libro, studiare o concentrarsi sul lavoro.

    Grazie al clima unico, sempre mite la nostra terrazza è accessibile sin dai primi mesi dell'anno."
    ;
    $trad['titoloblocco3']="Alloro Suite Hotel, un altro concetto di albergo, dove il silenzio, l'accoglienza e la naturalità trasformano l'ambiente in un'isola speciale dentro la città.

    Da noi, troverai comodità, cortesia e quiete ma anche efficienza e praticità. Difficile crederci ma è così: possiamo garantirvi funzionalità e grande riposo a due passi dal vostro centro di affari. Uscite dalla fiera e in pochi minuti avrete dimenticato il rumore, il caos,la fretta.

    all'arrivo, l'atmosfera rilassante dell'Alloro Suite Hotel, con le sue tenui tinte pastello, vi avvolgerà. Noi saremo lì ad aspettarvi, offrendovi un servizio garbato, discreto, attento.

    Se ancora non ci conoscete, vale la pena di provarci!"
    ;
    //eccetera...

    ?>
    3° nella pagina principale dove ci sono le bandiere scrivi questo codice:
    Codice PHP:
    <?
    include 'lang/conf.php';
    echo 
    "
    [url="
    $PHP_SELF?lang=it><img"][/url] | [url="$PHP_SELF?lang=en><img"][/url] | [url="$PHP_SELF?lang=fr>"] [/url]";
    echo 
    "<marquee behavior=scroll direction=left loop=infinite>".$trad['titoloblocco1']."</marquee>";
    ?>
    se non capisci qualcosa chiedi pure
    vestini.gilda@libero.it

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.