Avatar billede jps2mt Nybegynder
21. januar 2004 - 12:30 Der er 5 kommentarer og
1 løsning

include problem

Jeg har et script der skal liste nogle katalog navne, og i hver katalognavn skal det include en fil og læse _lang ud (det er til noget sprogstyring)...

Nu har jeg så det problem at når først det første katalogs _lang er indlæst er det den der hænger ved i alle de andre også...Hvordan kan man lave det om så hver gang man includer en ny fil med _lang, så er det den nyeste der hentes??
Avatar billede nikolajdu Nybegynder
21. januar 2004 - 12:35 #1
Jeg ville vælge at sætte en cookie når der skiftes sprog og så se hvilket sprog der er valgt - Er intet valgt så default.
Avatar billede Slettet bruger
21. januar 2004 - 12:37 #2
hmm.. er ikke helt sikker på jeg ved hvad du mener.
Er det når du åbner en ny side, at den stadig inkludere det fra den tidligere side?
Avatar billede jps2mt Nybegynder
21. januar 2004 - 12:43 #3
Helt ved siden af, begge to...

Her er lidt kode, så kan det være i kan se problemet...

  $dir = opendir($_newPath."/language");
  $_lngsel = "<select class=\"lngsel\" name=\"lng\" onChange=\"location.href='stats.php?lng=' + this.value;\">";
  while ($readdir = readdir($dir)) {
  if(is_dir($_newPath."/language/".$readdir) && $readdir != "." && $readdir != "..") {
    include($_newPath."/language/".$readdir."/lng_dsc.php");
    if ($lng == $readdir) {
    $_lngsel .= "<option value=\"".$readdir."\" selected>"._lang."</option>";
    } else {
    $_lngsel .= "<option value=\"".$readdir."\">"._lang."</option>";
    }
  }
  }

Der er fra den funktion der skal lave listen med sprog at vælge imellem...
For hvert sprog inkluderer den en ny lng_dsc.php hvor der står noget beskrivelse af sproget...
Alle variablerne i lng_dsc.php er sat med define();...
Avatar billede Slettet bruger
21. januar 2004 - 20:10 #4
Med define laver man ikke variabler men konstanter. Jeg vil anbefale dig at lave et array i stedet for.

Prøv at vise os lidt af indholdet fra en af de inkluderede filer.

Hvis du vil lave det rigtig godt, bør du bruge PHPs gettext-support istedet for at lave det selv. Det er netop beregnet på at have tekster til flere sprog.
Avatar billede Slettet bruger
21. januar 2004 - 20:12 #5
En anden ide kunne være at returnere en værdi fra den inkluderede fil.
Avatar billede jps2mt Nybegynder
21. januar 2004 - 20:29 #6
Har selv fået det til at virke...

Istedetfor at lave f.eks. define("_lang","Danish"); kunne man lave det med $_lang = "Danish";

Det har den funktion jeg ville have ud af det...
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