Gjest Skrevet 8. mai 2009 Skrevet 8. mai 2009 Hei! Driver med en basic nettside og fant ut at jeg vil ha støtte for engelsk + norsk språk. Så isteden for å kode alle filene om igjen vil jeg bruke multi språk. Altså ha to språkfiler som inneholder alle verdiene Jeg skal bruke $Session. Hvordan jeg har tenkt: En fil som sjekker om det finnes en $Session med en verdi som er lagret som cookie. Hvis ikke så lager den en $Session med den verdien brukeren har valgt. Så henter den filen som brukeren har valgt med include once. Noens om har tid til å sette opp scriptet for meg? PS: I språk filene har jeg tenkt til å gjøre slik: define(NAVN, 'Hei mitt navn er ColdIce');
itsmebth Skrevet 8. mai 2009 Skrevet 8. mai 2009 Du kan se på http://framework.zend.com/manual/en/zend.locale.html
Gjest Skrevet 8. mai 2009 Skrevet 8. mai 2009 Tenkte på noe enkelt. Ikke template engine Ser avansert ut?
Martin A. Skrevet 9. mai 2009 Skrevet 9. mai 2009 ./lang/no.php <?php $lang = array( 'nøkkel' => 'Tekst', ); ./lang/en.php <?php $lang = array( 'nøkkel' => 'Text', ); function load_language() { if ( ! $_COOKIE['lang'] ) { $lang = "no"; @setcookie( 'lang', $lang ); } else { $lang = filter_var( $_COOKIE['lang'] ); } // Sånn i tilfelle fila ikke eksisterer if( ! file_exists( "./lang/{$lang}.php" ) ) { $lang = "no"; } include "./lang/{$lang}.php"; return $lang; } function set_language() { $lang = filter_var( $_GET['lang'] ); if( file_exists( "./lang/{$lang}.php" ) ) { @setcookie( 'lang', $lang ); } return; } $lang = load_language(); echo $lang['nøkkel']; echo "<a href='?lang=en'>Engelsk</a>"; Skrevet på frihånd, ikke testet. Språknøklene må være lik i alle språk.
Gjest Skrevet 9. mai 2009 Skrevet 9. mai 2009 (endret) Takk for et godt svar M4rtin! Skrevet på frihånd, ikke testet. Språknøklene må være lik i alle språk. Det betyr at jeg ikke kan gjøre slik: ./lang/no.php <?php $lang = array( 'nøkkel' => 'Tekst', $lang = array( 'nøkkel2' => 'Tekst2', ); ?> Og siste koden du ga meg. Den skal være i index.php? EDIT: Fungerer ikke om du skal bytte til engelsk språk "/ Endret 9. mai 2009 av Gjest
Edorph Skrevet 9. mai 2009 Skrevet 9. mai 2009 Ikke akkurat sånn nei, m4rtin mente slik: ./lang/no.php <?php $lang = array( 'nøkkel' => 'tekst', 'nøkkel2' => 'tekst2' ); ?>
Gjest Skrevet 9. mai 2009 Skrevet 9. mai 2009 Takk for svar Edorph. Men det M4rtin skrev fungerer ikke set_language() Blir jo heller ikke kjørt.
Edorph Skrevet 9. mai 2009 Skrevet 9. mai 2009 Det er sant. Du får slenge inn et kall til den på en linje over $lang = load_language() eller noe.
Martin A. Skrevet 9. mai 2009 Skrevet 9. mai 2009 if ( isset( $_GET['lang'] ) AND !empty( $_GET['lang'] ) ) { set_language(); }
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå