Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1255 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Détecter le pays du visiteur et mettre la rédirection adéquate

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Détecter le pays du visiteur et mettre la rédirection adéquate

n°1427364
Niko80
Posté le 18-08-2006 à 16:39:42  profilanswer
 

Bonjour, je souhaite réaliser un site en plusieurs langues.
Je souhaite utiliser un script qui permet de détecter le pays ou la langue de l'utilisateur et de le rédiriger sur différentes pages selon cette origine.
 
Est difficile à faire ?
 
Merci

mood
Publicité
Posté le 18-08-2006 à 16:39:42  profilanswer
 

n°1427369
jbourdello​n
Posté le 18-08-2006 à 16:48:36  profilanswer
 

si c'est en PHP tu peux récupérer la locale du navigateur (normalement il y a peu de chance que tu te tromps)  

n°1427462
nintendose
Dentist to the Stars
Posté le 18-08-2006 à 19:19:16  profilanswer
 

tu as deux moyens de le faire
 
- le premier en detectant la langue du navigateur.
Cette methode est pas geniale, par exemple dans mon cas je suis en indonesie avec un firefox en langue US, je suis donc considere comme un internaute US, bien que je sois francais :D
 
- le second en utilisant le service ip2country (ip2country.com), qui te fournit une table MySQL en telechargement gratuit, te permettant facilement de faire le lien IP-> pays du visiteur. Ce service est fiable aux alentours de 95%, le tout est de bien mettre a jour ta base regulierement.
 
En tout cas pour moi cela a toujours bien marche, il me reconnait bien comme vivant a Jakarta (indonesie). J ai fait tester par pas mal de gens un peu partout dans le monde, jamais eu d'erreur.


---------------
Expatrie a Jakarta (Indonesie) depuis fevrier 2006.
n°1427531
Dj YeLL
$question = $to_be || !$to_be;
Posté le 18-08-2006 à 22:10:47  profilanswer
 

ip2country ne semble plus proposer de base de données. De plus je ne crois pas que c'était gratuit d'après ce qu'ils disent.
 
Donc tu peux utiliser $_SERVER['ACCEPT_LANGUAGE'] ...


---------------
Gamertag: CoteBlack YeLL
n°1427569
Niko80
Posté le 18-08-2006 à 23:33:44  profilanswer
 

ok merci pour vos réponse. Sur le site ip2country, il y a un lien vers MaxMind.com, qui lui propose le service gratuit que proposat ip2country... j vais essayer

n°1428214
Djebel1
Nul professionnel
Posté le 20-08-2006 à 21:34:43  profilanswer
 

$_SERVER['ACCEPT_LANGUAGE'] n'est pas du tout le critère principal utilisé par les grands sites (google, yahoo, ...)
Il suffit de naviguer avec l'anglais en langue par défaut pour s'apercevoir que tous ces sites te reconnaitront français.
 
Il est évident qu'ils se basent sur l'IP, et pas sur un truc aussi peu fiable que $_SERVER['ACCEPT_LANGUAGE'] (beaucoup de gens téléchargent un navigateur en anglais sans être anglais, et sans savoir qu'ils peuvent modifier la langue par défaut)

n°1428264
Dj YeLL
$question = $to_be || !$to_be;
Posté le 20-08-2006 à 23:03:04  profilanswer
 

Djebel1 a écrit :

$_SERVER['ACCEPT_LANGUAGE'] n'est pas du tout le critère principal utilisé par les grands sites (google, yahoo, ...)
Il suffit de naviguer avec l'anglais en langue par défaut pour s'apercevoir que tous ces sites te reconnaitront français.
 
Il est évident qu'ils se basent sur l'IP, et pas sur un truc aussi peu fiable que $_SERVER['ACCEPT_LANGUAGE'] (beaucoup de gens téléchargent un navigateur en anglais sans être anglais, et sans savoir qu'ils peuvent modifier la langue par défaut)


 
"Beaucoup" je ne pense pas non... et si c'est le cas c'est leur problème [:spamafote] Ils sont assez grand pour cliquer sur le drapeau les concernant ... faut pas déconner.
 
Dans ce cas on peu prendre le cas inverse, un français qui utilise un navigateur français, mais qui vit aux Etats-Unis sera detecté comme anglais ... on retourne juste le problème c'est tout [:spamafote]


---------------
Gamertag: CoteBlack YeLL
n°1428300
leflos5
On est ou on est pas :)
Posté le 20-08-2006 à 23:41:24  profilanswer
 

Dj YeLL a écrit :

"Beaucoup" je ne pense pas non... et si c'est le cas c'est leur problème [:spamafote] Ils sont assez grand pour cliquer sur le drapeau les concernant ... faut pas déconner.
 
Dans ce cas on peu prendre le cas inverse, un français qui utilise un navigateur français, mais qui vit aux Etats-Unis sera detecté comme anglais ... on retourne juste le problème c'est tout [:spamafote]


Donc autant partir sur la langue du navigateur si elle est différente de celle du pays avec l'IP   :)

n°1428302
Dj YeLL
$question = $to_be || !$to_be;
Posté le 20-08-2006 à 23:45:06  profilanswer
 

leflos5 a écrit :

Donc autant partir sur la langue du navigateur si elle est différente de celle du pays avec l'IP   :)


 
Euh, ben dans ce cas on repart à zéro non ? :??:


---------------
Gamertag: CoteBlack YeLL
n°1428324
leflos5
On est ou on est pas :)
Posté le 21-08-2006 à 00:27:57  profilanswer
 

Dj YeLL a écrit :

Euh, ben dans ce cas on repart à zéro non ? :??:


Oui mais non parce que je parlais de se servir des deux :)
 
Après bien évidement que ça résout pas tous les cas :spamafote:  
 
Si authentification, autant se servir de la langue déclarée  :whistle:

mood
Publicité
Posté le 21-08-2006 à 00:27:57  profilanswer
 

n°1428464
Dj YeLL
$question = $to_be || !$to_be;
Posté le 21-08-2006 à 11:38:29  profilanswer
 

leflos5 a écrit :

Oui mais non parce que je parlais de se servir des deux :)
 
Après bien évidement que ça résout pas tous les cas :spamafote:  
 
Si authentification, autant se servir de la langue déclarée  :whistle:


 
Ben je sais.
 
Tu dis que si la langue du navigateur diffère de celle de l'ip, on prend celle du navigateur ...
 
Pour NAV = Langue du navigateur, et IP = langue detectée à partir de l'IP, tu dis que :
 
Si NAV = IP, on prend IP (qui vaut NAV), et si NAV != IP, on prend NAV ... donc en gros on prend toujours NAV ... Donc ça sert à rien ?
 
Non ?


---------------
Gamertag: CoteBlack YeLL
n°1428832
Djebel1
Nul professionnel
Posté le 21-08-2006 à 18:23:23  profilanswer
 

Dj YeLL a écrit :

Dans ce cas on peu prendre le cas inverse, un français qui utilise un navigateur français, mais qui vit aux Etats-Unis sera detecté comme anglais ... on retourne juste le problème c'est tout [:spamafote]


Oui oui c'est exactement ça, et dans ce cas tu dois modifier la langue dans tes préférences sur le site.
Il y a beaucoup plus de gens utilisant un navigateur avec la langue mal config que d'expatriés voulant le site dans leur langue d'origine et ne sachant pas parler la langue de leur pays d'accueil d'après moi (avis subjectif et purement personnel).
 
Mais suffit de voir ce que font les sites de référence en ce domaine hein. Change la langue de ton navigateur, vire les cookies, change d'IP au cas où, tu verras bien que ça ne change pas ta langue sur les sites en question. Y a surement une raison.
Ils se disent ptet qu'un mec qui sait pas config la langue de son navigateur, vaut mieux pas le balancer sur un site en anglais, alors qu'un expatrié qui sait config la langue de son navigateur, il sait surement parler la langue du pays où il est, et il sait surement cliquer sur un drapeau.
 
En tout cas s'ils le font comme ça, ils doivent avoir étudier le problème.

Message cité 1 fois
Message édité par Djebel1 le 21-08-2006 à 18:28:29
n°1428988
Dj YeLL
$question = $to_be || !$to_be;
Posté le 21-08-2006 à 21:27:47  profilanswer
 

Djebel1 a écrit :

Oui oui c'est exactement ça, et dans ce cas tu dois modifier la langue dans tes préférences sur le site.
Il y a beaucoup plus de gens utilisant un navigateur avec la langue mal config que d'expatriés voulant le site dans leur langue d'origine et ne sachant pas parler la langue de leur pays d'accueil d'après moi (avis subjectif et purement personnel).
 
Mais suffit de voir ce que font les sites de référence en ce domaine hein (#1). Change la langue de ton navigateur, vire les cookies, change d'IP au cas où, tu verras bien que ça ne change pas ta langue sur les sites en question. Y a surement une raison.
Ils se disent ptet qu'un mec qui sait pas config la langue de son navigateur, vaut mieux pas le balancer sur un site en anglais (#2), alors qu'un expatrié qui sait config la langue de son navigateur, il sait surement parler la langue du pays où il est, et il sait surement cliquer sur un drapeau.
 
En tout cas s'ils le font comme ça, ils doivent avoir étudier le problème.


 
Je comprends parfaitement ce que tu veux dire. Mais je pense qu'après c'est à chacun de voir ;)
 
(#1) : Pas toujours, moi si je vais sur Amazon.com (qu'on peut aisément classer dans les sites de reference :D ) il me redirige pas vers la FR ... Et ça ne doit pas être le seul dans ce cas.
 
Enfin, en ce qui me concerne, ça fait partie des "gadgets" donc bon. Si un français arrive sur mon site, que ça lui affiche une page en anglais, il réussira bien à cliquer sur le drapeau français.
 
(#2) : Je ne suis pas spécialement d'accord sur ce point par contre. Un mec qui touche pas une bille en anglais, je vois pas comment il aurait un navigateur en anglais (soit il utilise l'Internet Explorer de son OS, donc certainement en français, soit il a téléchargé Firefox ou Opera ... en français (s'il a réussi à le télécharger, installer et utiliser en anglais, ça ne craint rien s'il tombe sur une page anglaise)
 
Mais ce n'est que mon avis :D


---------------
Gamertag: CoteBlack YeLL
n°1429057
leflos5
On est ou on est pas :)
Posté le 22-08-2006 à 01:26:44  profilanswer
 

Dj YeLL a écrit :

Ben je sais.
 
Tu dis que si la langue du navigateur diffère de celle de l'ip, on prend celle du navigateur ...
 
Pour NAV = Langue du navigateur, et IP = langue detectée à partir de l'IP, tu dis que :
 
Si NAV = IP, on prend IP (qui vaut NAV), et si NAV != IP, on prend NAV ... donc en gros on prend toujours NAV ... Donc ça sert à rien ?
 
Non ?


Oui en effet :D
 
Il manque une alternative: si IP=anglais et NAV!=anglais alors NAV :lol:  
 
Sérieusement, j'éliminerais le côté NAV=anglais si l'IP ne l'est pas ;) Mettre à part le côté anglophone du navigateur si l'IP correspond pas à un pays anglophone, parce que y'a plus de chance d'avoir un navigateur anglophone sans que ça gène trop sans pour autant être anglophone :)  
 
Exemple moi, j'ai des OS anglais parce que j'avais rien d'autre sous la main quand j'ai installé, donc IE en anglais mais je m'en fous, ça me gêne pas, de là à lire tout un truc en anglais que je pourrais lire en français  :non: Mais en effet si je vois un petit drapeau, je cliquouillerais dessus  :p

n°1429307
Djebel1
Nul professionnel
Posté le 22-08-2006 à 14:05:09  profilanswer
 

Dj YeLL a écrit :


(#1) : Pas toujours, moi si je vais sur Amazon.com (qu'on peut aisément classer dans les sites de reference :D ) il me redirige pas vers la FR ... Et ça ne doit pas être le seul dans ce cas.


Ha ouais marrant, j'avais testé que sur les moteurs de recherche.
Enfin au final, je trouve ça plus "pro" de faire ça par IP, mais dans mes applis je fais comme toi, pas envie de me souler avec une base d'adresses IP :D
 
Le fait que des grands sites fassent pareil me rassurent, t'imagines pas à quel point :p

n°1429563
lkolrn
<comment ça marche?>
Posté le 22-08-2006 à 17:54:41  profilanswer
 

Pour trouver la nationalité d'un gars : adresse IP only, et encore... (aol sux)
 
Juste pour avoir un avis supplémentaire (même si osef, je le donne :P) :
 
selon moi la langue du navigateur ne veut absolument rien dire, un américain peut (par le + grand des hasards certes) utiliser un navigateur avec la langue FR (par défaut ou pas). Et biensûr il est impossible de se lancer dans des hypothèses qui n'ont aucun sens (cf. ci-dessus avec le cas du Français qui vit aux USA^^)
 
Le plus simple : tu fais ta page d'acceuil en Anglais par défaut, et tu laisses le choix avec les petits drapeaux
(car difficile voire impossible d'atteindre les 100% de détection de la nationalité de l'utilisateur, celui-ci est donc obligé d'agir pour informer le système)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Détecter le pays du visiteur et mettre la rédirection adéquate

 

Sujets relatifs
Font et CSS : que faire quand le visiteur n'a pas la typo utilisée ?Redirection par frame d'un domaine -> pb de login avec ie
Mettre une image de fonds (forum PhpBB)Comment mettre ce cadre en background ?
Redirection de lienBatch - Détecter une imprimante
test adresse et redirectionRedirection type shell avec script perl cgi
JApplet : Mettre à jour un panel dynamiquement[Résolu] [C#] Mettre à jour une List à partir d'une autre
Plus de sujets relatifs à : Détecter le pays du visiteur et mettre la rédirection adéquate


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR