Avatar billede wario Nybegynder
03. december 2004 - 13:50 Der er 6 kommentarer og
1 løsning

Valgt af startside efter land.

Det er måske en lidt rodet forklaring på problemet, men jeg skal bruge en default fil (.asp, som kan pege mig hen på forskellige startsider, i forbindelse hvilket landt man ser siden fra.

F.eks.
Danmark: \filer\danmark.asp
Tyskland \filer\tyskland.asp
osv.

HVordan laver jeg en deault fil med de forskellige landekoder, og hvor kan jeg egentlig finde landekoder til verdens lande?
Avatar billede arne_v Ekspert
04. december 2004 - 21:38 #1
Du skal have fat på en database som kan bruge stil at oversætte fra
IP numre til land.

De findes. Fra hundedyre til gratis.

Og så læser dit ASP script IP adresser på client, slår op i databasen
og redirecter til den rigtige side.
Avatar billede roenving Novice
05. december 2004 - 07:53 #2
-- og hvis du vil gå lidt mere direkte, og ikke være så avanceret, kan du vha. javascript kigge på computerens eller browserens sprogindstillinger !-)
Avatar billede arne_v Ekspert
05. december 2004 - 14:38 #3
"hvilket landt man ser siden fra" og "computerens eller browserens sprogindstillinger"
er bare tit forskellige.

Men:
  - det er 100 gange nemmere
  - og alle de danskere der kører med engelsk opsætning kan jo nok også læse
    en engelsk side
Avatar billede 3xm Nybegynder
05. december 2004 - 14:47 #4
jeg har til en mindre side lavet lidt kode i php der gør arbejdet. mon ikke det kan skrives om til asp?

<?

// først finder vi host-adressen udfra ip-adressen
$land = gethostbyaddr($_SERVER["REMOTE_ADDR"]);

// så laver vi $land om til et array, hvor vi deler host-strengen ved punktummer (.)
explode(".", $land);

// til sidst tager vi den sidste post i array'et - der oftest svarer til domæne-landekoden (dansk: dk, tysk: de, osv.)
$land = end($land);

// til allersidst sender vi folk derhen der svarer til deres landekode - og hvis den ikke matcher får de den engelske.
if (strtolower($land) == "dk") {
  header("Location: ./da/");
  exit;
} elseif (strtolower($land) == "de") {
  header("Location: ./de/");
  exit;
} else {
  header("Location: ./en/");
  exit;
}

?>


det burde være lige til at oversætte til asp.

=)
Avatar billede 3xm Nybegynder
05. december 2004 - 14:49 #5
den funky del er nok funktionen gethostbyaddr() - hvad den helt præcis gør kan du se her: http://dk2.php.net/manual/en/function.gethostbyaddr.php - så må du selv finde asp's pendant.

=)
Avatar billede arne_v Ekspert
07. december 2004 - 23:09 #6
Den er heller ikke speciel skudsikker.

.dk er nok stort set altid Danmark, men .com er ikke nødvendigvis USA og andre
som bruges også anderledes end tiltænkt (små øriger i stillehavet med en spændende
landekode).
Avatar billede arne_v Ekspert
01. januar 2005 - 13:55 #7
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
Kurser inden for grundlæggende programmering

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