Je cherche depuis un moment un script pour rediriger le visiteur sur un url ou l'autre selon la langue par défaut de son navigateur.
Car j'ai actuellement une version fr de mon site "monsite/index.php"
Mais je viens de faire une version en de mon site "monsite/english_version/index.php"
Donc ce que je voudrais, c'est que je mette un script juste sur la page d'index fr (la premiere car c'est celle qui est référencée) qui permette au visiteur de rester sur cette page d'index si son navigateur est en fr, ou alors qu'il soit redirigé sur "monsite/english_version/index.php" si son navigateur est en "en".
J'en ai déjà essayé plusieurs .. sans résultats
Merci de votre aide.
Redox
Modérateurs
Inscrit le: 07 Sep 2004
Messages: 973
Posté le: Mer 11 Jan 2006, 9:17 pm
Salut,
J'en ai déjà essayé plusieurs .. sans résultats
J'en ai moi aussi pas mal sous le coude , donc j'espère que ceux que je vais te donner marcheront mieux que les tiens
En voici un à placer entre les balises <HEAD> et </HEAD>:
Code:
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"><!--
//
if (navigator.appName == 'Netscape')
var language = navigator.language;
else
var language = navigator.browserLanguage;
var code = language.substring(0,2);
if ((code == 'fr') || (code == 'de') || (code == 'it') || (code == 'sp'))
{
if (code == 'fr') url ="index_FR.htm";
if (code == 'de') url ="index_DE.htm";
if (code == 'sp') url ="index_SP.htm";
if (code == 'it') url ="index_IT.htm";
}
else {url ="index_UK.htm";}
// Decommentez cette ligne :
// document.location.href = url
alert(url);
//-->
</SCRIPT>
the mask
Inscrit le: 19 Oct 2005
Messages: 18
Posté le: Mer 11 Jan 2006, 11:28 pm
Ouais, j'ai essayé exacement celui là ... sans résultat ....
à moins que mon browser (FireFox) n'arrive pas à changer de langue ... !!
Pourtant c'est pas dur à faire.
the mask
Inscrit le: 19 Oct 2005
Messages: 18
Posté le: Jeu 12 Jan 2006, 7:06 pm
UP !
Redox
Modérateurs
Inscrit le: 07 Sep 2004
Messages: 973
Posté le: Jeu 12 Jan 2006, 8:41 pm
Re,
Je viens de tester le script que je t'ai passé dans mon précédent post et il marche parfaitement sous IE6 et Firefox !
the mask
Inscrit le: 19 Oct 2005
Messages: 18
Posté le: Jeu 12 Jan 2006, 10:24 pm
Salut;)
Bon, alors je te propose d'essayer de voir avec mon site.
J'ai mis le script sur la page d'index.
Par contre deux choses :
- J'ai fait une modif sur le code java pour avoir que 2 langues de choix (car 2 versions seulements du site)
- La version Anglaise est en fabrication, donc il se peut qu'il y ai des erreurs de traductions.
De plus, j'ai viré l'alerte ... car pas esthétique à mon gout.
(à moins que mes modifs plantent l'appli java ....sinon, si ca marche pour toi, et bien, ca doit etre un probleme chez moi avec mes navigateurs).
Merci de me tenir au courant.
Redox
Modérateurs
Inscrit le: 07 Sep 2004
Messages: 973
Posté le: Jeu 12 Jan 2006, 10:47 pm
Lol, normal que cela ne marche pas, tu as laissé les // au début de la ligne pour la redirection une fois qu'il a obtenu la langue du navigateur !
Le code marche mieux comme ceci:
Code:
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"><!--
//
if (navigator.appName == 'Netscape')
var language = navigator.language;
else
var language = navigator.browserLanguage;
var code = language.substring(0,2);
if ((code == 'fr') || (code == 'en'))
{
if (code == 'fr') url ="index.php";
if (code == 'en') url ="english_version/index.php";
}
else {url ="index.php";}
document.location.href = url
//-->
</SCRIPT>
the mask
Inscrit le: 19 Oct 2005
Messages: 18
Posté le: Ven 13 Jan 2006, 7:09 pm
Heu t'es sur de toi là ..??
Car là avec ce code .... bah le site ne s'affiche meme plus (donc j'ai enlevé le script d'ailleurs)! !!
Comme si le navigateur bouclait en permanance .. !!
Redox
Modérateurs
Inscrit le: 07 Sep 2004
Messages: 973
Posté le: Ven 13 Jan 2006, 7:46 pm
Cela est normal que cela boucle, c'est ce que tu lui demandes en quelque sorte de faire dans ce que tu as modifié !
Tu lui demandes de vérifier la langue du navigateur et si elle est française elle redirige sur la même page (index.php) ! Donc forcément une fois redirigé sur la même page, le script se réexécute de nouveau et ainsi de suite jusqu'à l'infini
Donc, il serait mieux que tu fasses une page spécifique pour la langue fr comme dans le script que je t'avais donné au début...
the mask
Inscrit le: 19 Oct 2005
Messages: 18
Posté le: Ven 13 Jan 2006, 10:39 pm
Mais c'est bien sur !!!!!
Bon alors je sais pas encre comment faire.
Disons que cette page d'index est plutot bien référencée ... alors ca me gene de la changer ...
T'aurais pas une astuce pour que si la langue est en fr, eu lieu d'etre redirigé sur l'url 'index.php', il continu à lire la suite du code html ..?
J'ai connais pas grand chose en htlm et javascript ..
En meme temps c'est pour ca que je post ici
Merci.
Redox
Modérateurs
Inscrit le: 07 Sep 2004
Messages: 973
Posté le: Ven 13 Jan 2006, 11:00 pm
Tu n'as qu'à juste reduire ton code à celui ci:
Code:
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--//
if (navigator.appName == 'Netscape')
var language = navigator.language;
else
var language = navigator.browserLanguage;
Mince ... j'ai essayé celui-là aussi, et ca ne marche pas.
La redirection ne fonctionne pas
Essaie ... dit moi si ca marche avec toi ?
Merci BCP !
Redox
Modérateurs
Inscrit le: 07 Sep 2004
Messages: 973
Posté le: Sam 14 Jan 2006, 3:51 pm
Bah il marche très bien ! Je vois pas ce qui ne peut pas marcher chez toi puisque c'est le même que celui d'avant qui marchait déjà, j'ai juste enlevé une condition !
the mask
Inscrit le: 19 Oct 2005
Messages: 18
Posté le: Sam 14 Jan 2006, 4:53 pm
Ha ... bon déjà, si ca marche chez toi .. c'est super !
Ca veux dire que j'ai un soucis avec mon navigateur.
J'utilise FireFox 1.0.7.
Par contre, c'est une version Fr de Firefox ... alors peu etre que meme en mettant la langue 'en' dans les préférences .... ca marche pas, il garde en fr.
the mask
Inscrit le: 19 Oct 2005
Messages: 18
Posté le: Sam 14 Jan 2006, 4:56 pm
Et meme avec IE, ca marche pas non plus
Je doit arriver à passer mes navigateurs en version 'en' !
Vous pouvez poster de nouveaux sujets dans ce forum Vous pouvez répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas voter dans les sondages de ce forum
Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 2