Gå til innhold

Nettside på flere språk


Anbefalte innlegg

Jeg har nylig begynt med PHP og begynner å få til det meste som er basic.

Har laget en side med mysql database i bakgrunnen. Siden er stort sett helt dynamisk. Meny og sider kan endres i et adminpanel.

 

Jeg ønsker å kunne lagre innholdet på siden i to forskjellige språk.

Eks. en ekstra textarea-boks for engelsk når jeg oppretter en ny side.

 

Så når brukeren trykker på det engelske flagget på siden så skal personen kun se det som er skrevet på engelsk i databasen. Nettleseren bør også huske valgt språk til senere.

 

Hvordan kan dette gjøres? Noen erfaringer? Noen som evt. vet om et lignende script?

 

Evt. lagre brukerens valg i en session, så bruker jeg en if-setning for hvilket språk som skal skrives ut?

Endret av dico
Lenke til kommentar
Videoannonse
Annonse

Det du kan gjøre er å lage to linker på sida di til setlanguage.php om _GET = NO så includerer den no.php eller om det er engelsk så includerer den en.php teksten legger du i array. finnes sikkert bedre måter, men slik gjor jeg det :)

Lenke til kommentar

En PHP session er [oftest] en cookie det også (kan være en del av url ?sid=).

Du kan stille inn hvor lenge du vil en session cookie skal vare, fra minutter til år eller bare så lenge nettleseren er oppe.

 

http://no2.php.net/manual/en/session.configuration.php

session.cookie_lifetime integer

session.cookie_lifetime specifies the lifetime of the cookie in seconds which is sent to the browser. The value 0 means "until the browser is closed." Defaults to 0. See also session_get_cookie_params() and session_set_cookie_params().

 

Note: The expiration timestamp is set relative to the server time, which is not necessarily the same as the time in the client's browser.

Lenke til kommentar
// endre språk og utløpstiden til det du vil (det finnes sikkert begrensninger dog)

//språk
$lang = 'no'; // eller 'en'

// utløpstid
$years = 0;
$months = 0;
$weeks = 0;
$days = 0;
$hours = 0;
$minutes = 0;
$seconds = 0;

//---------

$miconst = 60;
$hconst = $miconst * 60;
$dconst = $hconst * 24;
$wconst = $dconst * 7;
$mconst = $dconst * 30;
$yconst = $dconst * 365;

$addtime = $years * $yconst;
$addtime += $months * $mconst;
$addtime += $weeks * $wconst;
$addtime += $days * $dconst;
$addtime += $hours * $hconst;
$addtime += $minutes * $miconst;
$addtime += $seconds;


setcookie('language', $lang, time()+$addtime);

// verdien hentes med $_COOKIE['language'];

Endret av grimjoey
Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...