Versio

Taal redirect

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

 

14 reacties op 'Taal redirect'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Steen
steen
4 jaar geleden
 
0 +1 -0 -1
gooi maar weg, laat de gebruiker altijd zijn eigen taal instellen.
Toby hinloopen
toby hinloopen
4 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 van de Water
Roel van de Water
4 jaar geleden
 
0 +1 -0 -1
Ziet er wel oké uit, maar doe het inderdaad beide.
Harry nvt
Harry nvt
4 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
4 jaar geleden
 
0 +1 -0 -1
Gewoon zo'n systeem op wikipedia. Das handig en werkt prima.
Jacques
jacques
4 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
4 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
4 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
4 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
4 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
4 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
4 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
4 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.
Bas Php
Bas Php
4 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.

  • Details
  • Harry nvt
    Door:
    Harry nvt
  • 4 jaar geleden
  • 1.638 x bekeken
  • Labels
  • Geen tags toegevoegd.