Ik kom er niet echt uit. Misschien kan iemand mij helpen of in de goede richting helpen. Ik heb een perl-script die er ongeveer zo uit ziet:
use vars qw($lang);
$lang = $q->param("lang") || "en";
if ($lang eq "nl") {
$lang = "nl";
}else {
$lang = "en";
}
require "lang/$lang.pl";
print $title{'please_log_in'};
print $lang;
Als de CGI-variable dus niet is gedefinieerd, wordt als taal "en" gekozen en lang/en.pl geopend.
Die ziet er ongeveer als volgt uit:
#!/usr/bin/perl -wTuse strict;
use diagnostics;
use vars qw(%title);
%title = (
please_log_in => "Please log in",
);
En lang/nl.pl ongeveer als volgt:
#!/usr/bin/perl -wTuse strict;
use diagnostics;
use vars qw(%title);
%title = (
please_log_in => "Log a.u.b. in",
);
Als ik mijn mod_perl apache opstart en enkele keren het script oproep krijg ik gewoon alles in het engels en onderaan staat er "en". Als ik dan &lang=nl doe, krijg ik echter in het begin soms de engelse tekst ("Please log in") met onderaan echter wel "nl". Dat is dus niet de bedoeling.
Wat gaat er fout? Kan iemand mij helpen? Alvast bedankt!
(Bewerkt door Bram Beernink om 13:59, 23-06-2005)