Taal redirect

Door Harry nvt, 13 jaar geleden, 6.360x bekeken

Kort script zonder toeters en bellen dat via php header redirect naar pagina's naar keuze op grond van de taal instelling van de browser. Wegschrijven als index.php in de webroot.
Getest. Tip: om te testen in Firefox, in de adresregel about:config invoeren, vervolgens filteren op woord 'language'. Je kunt dan (tijdelijk!) je default taalinstelling wijzigen om te zien hoe het script zich gedraagt.

Gesponsorde koppelingen

PHP script bestanden

  1. taal-redirect

 

Er zijn 14 reacties op 'Taal redirect'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Steen
steen
13 jaar geleden
 
0 +1 -0 -1
gooi maar weg, laat de gebruiker altijd zijn eigen taal instellen.
Toby hinloopen
toby hinloopen
13 jaar geleden
 
0 +1 -0 -1
break 2...
dat wist ik niet eens :P

@ steen: autodetectie is handig mits de gebruiker het ook zelf kan instellen.
Roel -
Roel -
13 jaar geleden
 
0 +1 -0 -1
Ziet er wel oké uit, maar doe het inderdaad beide.
Harry nvt
Harry nvt
13 jaar geleden
 
0 +1 -0 -1
Met 'laat de gebruiker zijn eigen taal instellen' kan ik me niet zoveel voorstellen. Wie doet dat nou. Kan me voorstellen dat het automatisch gebeurt. Op elke pagina in de site kan de user de taal wijzigen, hij gaat dan naar de startpagina van de betreffende taal. Op dat moment zet je een cookie met javascript. De laatst DOOR DE USER geselecteerde taal blijft dan bewaard. Die cookie haal je met php in bovenstaand script. Is er een taalcookie dan wordt het script een 'cookie-detect-language', is er geen cookie, dan is het script een 'browser-detect-language'... Dit is met een if..else constructie makkelijk aan te passen.
Toby hinloopen
toby hinloopen
13 jaar geleden
 
0 +1 -0 -1
Gewoon zo'n systeem op wikipedia. Das handig en werkt prima.
Jacques
jacques
13 jaar geleden
 
0 +1 -0 -1
Ik gebruik gewoon deze:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?php
    $server
   = 'localhost'; // MySQL hostname
    $username = '******; // MySQL username
    $password = '
******'; // MySQL password
    $dbname   = '
******; // MySQL db name
    
    
    $db = mysql_connect($server, $username, $password) or die(mysql_error());
          mysql_select_db($dbname) or die(mysql_error());
            
    $sql = 'SELECT
                country
            FROM
                ip2nation
            WHERE
                ip < INET_ATON("'
.$_SERVER['REMOTE_ADDR'].'")
            ORDER BY
                ip DESC
            LIMIT 0,1'
;
    
    list($country) = mysql_fetch_row(mysql_query($sql));
    
    switch ($country) {
        case
'be':
            echo "<META http-equiv=\"REFRESH\" CONTENT=\"0;URL=nl\">";
            exit;
        case
'nl':
            echo "<META http-equiv=\"REFRESH\" CONTENT=\"0;URL=nl\">";
            exit;
        case
'fr':
            echo "<META http-equiv=\"REFRESH\" CONTENT=\"0;URL=fr\">";
            exit;
        default:

            echo "<META http-equiv=\"REFRESH\" CONTENT=\"0;URL=en\">";
            exit;
    }

    
?>
Karl Karl
Karl Karl
13 jaar geleden
 
0 +1 -0 -1
Waarom geen header, jacques? Waarom (zo te zien) maar gewoon een meta in het wilde weg gooien?
Het is zo jammer dat browsers brakke / slechte / kut html accepteren. Ze zouden het niet moeten doen.
Verder vind ik dit soort scripts nogal onzinnig, maar dat is m'n persoonlijke mening.
Hipska BE
Hipska BE
13 jaar geleden
 
0 +1 -0 -1
@jaques: leuk voor de franstalige belgen...

@steen: Hilarisch idiote reactie :D

De bezoeker stelt dit toch in in zijn browser? Waarom dit dan niet meteen gebruiken? Natuurlijk is het handig om daarnaast altijd nog een taalselector te hebben, maar dit gebruiken als eerste keus kan zeker geen kwaad..
Iltar van der berg
iltar van der berg
13 jaar geleden
 
0 +1 -0 -1
"De bezoeker stelt dit toch in in zijn browser?"
Klopt ook niet altijd hoor...

Echter zijn die meta te lelijk voor woorden. Je kan ook een refresh sturen met een php header.
Hipska BE
Hipska BE
13 jaar geleden
 
0 +1 -0 -1
@Itar: Maar dan is het alvast wel al ingesteld. Dus kan je het nog steeds gebruiken. Of heb jij een grondige reden om het niet te gebruiken?
Karl Karl
Karl Karl
13 jaar geleden
 
0 +1 -0 -1
Niet elke gebruiker weet hoe hij dat moet instellen. Sommige kunnnen net internetten en meer niet.
Hipska BE
Hipska BE
13 jaar geleden
 
0 +1 -0 -1
Deze hebben dan hoogstwaarschijnlijk een nederlandse windows versie waar IE ook in het nederlands op geïnstalleerd staat en dus zal deze optie ook wel ingesteld staan op ... Jawel, Nederlands.
Roeltje M
Roeltje M
13 jaar geleden
 
0 +1 -0 -1
Waarmee is het mogelijk om de taal te detecteren dan?
Ik zoek namelijk nog iets waarmee ik eerst kijk naar de ingestelde taal, dan kijken of er handmatig (via site) taal is ingesteld -> deze opslaan in cookie/sessie.
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Bas Php
Bas Php
13 jaar geleden
 
0 +1 -0 -1
zo'n taal detectie is zeer irriterend want zo'n scriptje wil mijn pc nog wel eens op vangen als een duitse pc(woon hier tegen de grens:P) en dan gaat hij automatich over naar het duits en dan maar zoeken hoe je het om moet zetten naar nederlands of engels:@

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. taal-redirect

Labels

  • Geen tags toegevoegd.

Navigatie

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.