Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043

    doppia lingua, quale procedura corretta?

    Dovrei realizzare un sito in doppia lingua e pensavo di procedere in questo modo:

    PER CARICARE I TESTI STATICI
    Codice PHP:
    <?php 
    session_start
    ();
    $_SESSION['lingua'] = "it";

    <------------------[
    I]come faccio ad impostare la lingua di default solo la prima volta che l'utente entra nel sito?------------------>[/I]

    if ($_SESSION['
    lingua'] == "it"){
    include('
    lingua_it.php');
    }
    else {
    include('
    lingua_en.php');
    }
    ?>

    <------------------[I]in questo modo viene caricato un file esterno della lingua scelta, ad esempio:------------------>[/I]

    lingua_it.php

    <------------------[I]in cui dentro ci scrivo:------------------>[/I]

    <?php 
    $titolo = "ciao a tutti, benvenuti nel mio sito";
    $testo = "questo è il mio sito personale dove presento i miei hobby, il mio lavoro, ecc…………………….";
    ?>

    <------------------[I]per visualizzare il testo nella pagina metto:------------------>[/I]

    <?=$titolo?> 

    <?=$testo?>

    PER CARICARE I TESTI DINAMICI DAL DATABASE
    Codice PHP:
    <?php 
    session_start
    ();
    $_SESSION['lingua'] = "it";

    <------------------[
    I]come faccio ad impostare la lingua di default solo la prima volta che l'utente entra nel sito?------------------>[/I]
    ?>

    <------------------[I]ora imposto la pagina in base alla sessione della lingua scelta:------------------>[/I]

    <?php 
    $sql = "SELECT curriculum.* 
            FROM curriculum";
    $result = mysql_query($sql,$conn) or die (mysql_error());
    $row = mysql_fetch_array($result);

    if ($_SESSION['
    lingua'] == "it"){
    ?>

    <table width="980" height="50" border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td height="25"></td>
    </tr>
    <tr>
    <td height="25" align="center">
    <span class="testo_arancio_bold">
    <?=$row['
    esperienze_professionali_it']?>
    </span>
    </td>
    </tr>
    </table>

    <?php 
    }
    else {
    ?>

    <table width="980" height="50" border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td height="25"></td>
    </tr>
    <tr>
    <td height="25" align="center">
    <span class="testo_arancio_bold">
    <?=$row['
    esperienze_professionali_en']?>
    </span>
    </td>
    </tr>
    </table>

    }
    ?>
    Mi potete dire se c'è qualche errore, o se ce un metodo migliore per fare una doppia lingua?
    E poi nelle bandierine delle due lingue che link ci devo mettere per fargli cambiare la sessione della lingua scelta?

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    636
    non esiste un metodo migliore e uno peggiore, se hai la possibilità di avere i contenuti in entrambe le lingue e con possibilità intendo, nessun problema di spazio ne di tempo per tradurre tutti i testi, va bene come hai fatto, mentre se non vuoi tenere doppioni di contenuti(uno per lingua) e non vuoi perdere tempo a tradurre appoggiati a qualche servizio di traduzione, ce ne sono di gratuiti(google ne offre uno ad esempio).

    Per la questione bandiera che cambia la lingua, gioca con il css dei submit dei 2 form:
    codice:
    <form method='post'> 
       <input type='hidden' name='lang' value='it' />
       <input id='bandiera_it' type='submit'/>
    </form>
    
    <form method='post'> 
       <input type='hidden' name='lang' value='en' />
       <input id='bandiera_en' type='submit'/>
    </form>
    quindi a inizio pagina metti:

    Codice PHP:
    <?php
    session_start
    ();
    if(isset(
    $_POST['lang'])) $_SESSION['lingua'] = $_POST['lang'];
    if(!isset(
    $_SESSION['lingua'])) $_SESSION['lingua'] = 'it'//oppure 'en' (sarà la lingua di default)
    include("lingua_".$_SESSION['lingua'].".php");
    ?>

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043
    ok, grazie.

  4. #4
    Utente di HTML.it L'avatar di linoma
    Registrato dal
    Mar 2010
    Messaggi
    1,346
    Di solito faccio in questo modo, testo la qualita della lingua che l'utente usa nel browser e di default uso quella. Poi 2 piccole bandierine per fare una selezione della lingua.
    Per gli Spartani e Sparta usa spartan Il mio github

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 © 2026 vBulletin Solutions, Inc. All rights reserved.