Avatar billede dennisml Nybegynder
12. marts 2009 - 19:23 Der er 11 kommentarer og
1 løsning

Php flere sprog.

Hej eksperter..

Jeg er ved at lave en lille hjmemside og vil gerne have den på Dansk, spansk, og engelsk..

Men hvordan?? vil have det hele i php. så dansk er i en fil. og spansk i en anden,. men hvor og hvad skal jeg gøre hvad??

er ikke for god til det der php. lære stadig,. :D så være vendlig. hehe

Dennis
Avatar billede arne_v Ekspert
12. marts 2009 - 19:25 #1
Google soege termen er:

php internationalization

og der er masser af artikler om emnet.
Avatar billede dennisml Nybegynder
12. marts 2009 - 19:29 #2
hmm, syntes sku det er noget rodet noget de kommer op med mange af de sider, eller er det bare mig der ikke forstår noget ? :D
Avatar billede majbom Novice
12. marts 2009 - 19:41 #3
de gange jeg har lavet noget multilanguage-ting, har jeg gjort det med en fil pr sprog, hvor jeg så har defineret alle ordene på siden:

en.php:
define("HEADER", "My header");
define("LANGUAGE", "Language");

da.php:
define("HEADER", "Min overskrift");
define("LANGUAGE", "Sprog");

og på siden:

echo HEADER;
echo LANGUAGE;

og sprogfilen includer du bare:

include("languages/da.php");
Avatar billede hkb-x Nybegynder
12. marts 2009 - 19:45 #4
Hvad du kan gøre er at lave en funtion f.eks. tekst() der så modtager et id. Det id referere så til en tekst der i funktionen bliver hentet for det valgte sprog. et eksempel kunne være (dette er bare en dummy udgave) hvor cookien language afgør sproget:

function tekst ($id) {

echo file_get_contents ('pathe/to/text/'.$id.'_'.$_COOKIE['language'].'.txt');

}


Det snedige er at du selv kan bestemme om du vil have teksten i filer på serveren eller i en database hvilket jo er en del mere fleksibelt.
Avatar billede dennisml Nybegynder
12. marts 2009 - 19:54 #5
Splazz. nu siger den så på siden:


Parse error: syntax error, unexpected ':' in /home/virtual/XXXXXXXXXX.com/public_html/tash/test/languages/da.php on line 3

min php ser sån her ud:

<?php

en.php:
define("HEADER", "My header");
define("LANGUAGE", "Language");

da.php:
define("HEADER", "Min overskrift");
define("LANGUAGE", "Sprog");



?>

Hvad gør jeg galt.. sorry. not good at this :D
Avatar billede dennisml Nybegynder
12. marts 2009 - 19:56 #6
Thanks, i got it. :D smid et svar og jeg godkender..
Avatar billede majbom Novice
12. marts 2009 - 19:58 #7
hehe, ja der var du lige for hurtig :)

svar
Avatar billede dennisml Nybegynder
12. marts 2009 - 20:01 #8
du havde sat et : istedet for et ; :D det var alt

takker alligevel
Avatar billede hkb-x Nybegynder
12. marts 2009 - 20:02 #9
jeg bør lige påpege at du mend den løsning skal vedligeholde et styks kildekode per sprog. Dvs at udviklingen af din side blivar afhængi af antallet af sprog med noget der ligner:

udvikling + implementering * sprog

Hvilket bliver ret dyrt i længden.
Avatar billede dennisml Nybegynder
12. marts 2009 - 20:04 #10
ja ved det, men er bare en lille side med lidt tekst. ikke noget vildt.. men takker for det Hkb-x
Avatar billede dennisml Nybegynder
12. marts 2009 - 20:05 #11
Lige en ting mere :D
jeg har et billede (flag) når man så trykker der skal den ændre sproget. hvordan for jeg det. ? :D
Avatar billede majbom Novice
12. marts 2009 - 21:16 #12
je plejer at sætte en variabel i sessionen, til det valgte sprog...

og så i hver fil tjekker jeg om den er sat og bruger derefter det valgte sprog, ellers vælger den bare dansk.

-> hkb-x - der er da ikke en kildekode til hver sprog. der er en "define"-fil til hvert sprog
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB

Politiets Efterretningstjeneste

AI/ML udvikler i PET

Csis Security Group A/S

Sales Executive