Formation Google AnalyticsSavez-vous bien utiliser les outils de mesure d'audience ?
Effectuez-vous un calcul de ROI (Retour sur investissement) pour savoir comment améliorer vos campagnes emarketing ?
Savez-vous utiliser les bons outils pour booster votre taux de transformation ?
La formation Web Analytics de Ranking Metrics, présentée par un expert reconnu officiellement par Google Analytics, vous apportera les réponses à toutes vos questions !
===> Informations et inscriptions.

Aider une tanche en PHP

Poster un nouveau sujet Imprimer cette discussion    Forum -> Développement d'un site Web   Les dernières discussions de ce forum sont disponibles au format RSS
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 
Marie-Aude
WRInaute accro
WRInaute accro

Inscrit le: 05 Juin 2006
Messages: 3388
Localisation: More than a plastic girl

URL permanente de ce messagePosté le : Mer Juin 06, 2007 11:57    Sujet du message: Aider une tanche en PHP

Je ne connais rien de rien en php, ça va s'améliorer mais pour l'instant...

Je cherche à faire pour mon site une page index.php, qui détecte les langues préférées du navigateur.
Le site est en quatre langue fr, de, en, es
J'avais trouvé (mais j'ai perdu le lien) un code qui récupérait toutes les valeurs des langues préférées (avec les variantes régionales), et testait en boucle

1. Si la première préférence est une des quatre langues du site, aller à la page correspondante (url absolue sous la forme /lgxx/default.htl)
2. Sinon tester la deuxième langue préférée...
3. Si aucune langue trouvée, afficher la page en anglais (url /lgen/default.htm)

Bon déjà je ne retrouve pas ce code, uniquement des codes qui semblent reprendre la première langue préférée (mais comme je comprends pas tout...)

Deuxio j'ai essayé ce que j'ai trouvé, y compris sur WRI, et ça ne marche pas, ça ne me donne "rien" ou des erreurs sur la page.

Alors voilà, si quelqu'un avait la gentillesse de me dépanner, et de me donner très exactement le code que je dois mettre dans mon fichier index.php, du <? de démarrage au ?> final, il aura droit à ma reconnaissance infinie, matérialisée sous forme d'un traitement de faveur si jamais il (ou elle) vient au Maroc Smile (j'ai aussi l'allemagne en stock, mais j'ai remarqué que ça intéressait beaucoup moins les gens)
 
Marie-Aude Visiter le site web du posteur
FloBaoti
WRInaute passionné
WRInaute passionné

Inscrit le: 30 Avr 2006
Messages: 594
Localisation: Montpellier

URL permanente de ce messagePosté le : Mer Juin 06, 2007 12:51    Sujet du message: Aider une tanche en PHP

Pour les langues du navigateur, c'est un en-tête qu'envoit (ou pas !) le visiteur, rien de bien précis:
Code:
$_SERVER['HTTP_ACCEPT_LANGUAGE']
.

Le mieux reste le traçage via l'IP, sauf pour AOL.

@++
 
FloBaoti Visiter le site web du posteur
Marie-Aude
WRInaute accro
WRInaute accro

Inscrit le: 05 Juin 2006
Messages: 3388
Localisation: More than a plastic girl

URL permanente de ce messagePosté le : Mer Juin 06, 2007 14:03    Sujet du message: Aider une tanche en PHP

FloBaoti a écrit:
Pour les langues du navigateur, c'est un en-tête qu'envoit (ou pas !) le visiteur, rien de bien précis:
Code:
$_SERVER['HTTP_ACCEPT_LANGUAGE']
.

Le mieux reste le traçage via l'IP, sauf pour AOL.

@++


Merci mais

1. c'est pas le code complet me goures-je ?
2. Le traçage par l'IP ne tient absolument pas compte des préférences de l'internaute. Et moi ça me gonfle quand à cause de mon IP on m'envoie des pages en allemand aors que je souhaite des pages en français Smile
 
Marie-Aude Visiter le site web du posteur
FloBaoti
WRInaute passionné
WRInaute passionné

Inscrit le: 30 Avr 2006
Messages: 594
Localisation: Montpellier

URL permanente de ce messagePosté le : Mer Juin 06, 2007 14:15    Sujet du message: Aider une tanche en PHP

Ben le code tu en fais ce que tu veux, $_SERVER['HTTP_ACCEPT_LANGUAGE'] contient l'en-tête "Accept-Language" envoyé par le visiteur à ton serveur.

Après tu peux voir la première langue mise en préférence ainsi par exemple:
Code:
$lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, strstr($_SERVER['HTTP_ACCEPT_LANGUAGE'], ','));


(en supposant que cet en-tête comporte la langue comme ça:
Citation:
fr,fr-fr...

(chez moi c'est ça en tout cas)
 
FloBaoti Visiter le site web du posteur
Krysss
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 02 Fév 2007
Messages: 137
Localisation: Montpellier

URL permanente de ce messagePosté le : Mer Juin 06, 2007 14:29    Sujet du message: Aider une tanche en PHP

FloBaoti a écrit:
Pour les langues du navigateur...

Le mieux reste le traçage via l'IP, sauf pour AOL.

@++



Je vais paraitre vieux jeu mais le mieux à mon sens est que l'utilisateur choisisse lui même son langage.

Une arrivée sur une page avec la langue locale peut géner des internautes n'étant pas de la nationalité de leur pays de résidence. Donc laisser la liberté a l'internaute de choisir sa langue peut être un plus.
Et enregistrer le choix de l'utilisateur et lui ressortir à la prochaine visite c'est encore mieux.

Et puis bon dans un programme il ne faut pas de "sauf"... Un programme qui fonctionne dans 100% des cas sauf pour 20% des utilisateurs doit être corrigé car il y a des bugs ou des problèmes de conception, je ne critique personne vous l'aurez compris.
 
Krysss Visiter le site web du posteur
FloBaoti
WRInaute passionné
WRInaute passionné

Inscrit le: 30 Avr 2006
Messages: 594
Localisation: Montpellier

URL permanente de ce messagePosté le : Mer Juin 06, 2007 14:40    Sujet du message: Aider une tanche en PHP

Je parlais de méthodes automatiques pour ma part, forcément il ne peut rien avoir de mieux que l'utilisateur choisisse, mais de manière automatique, il n'y a rien qui fonctionne dans 100% des cas.
Puis avoir sur chaque site une page de sélection de langue, je ne trouve pas ça top perso. Je préfère arriver sur une langue, peu importe la langue, et trouver des drapeaux facilement sur la page pour changer de langue.

P.S:C'est ma faute si AOL refile des IP enregistrés aux Etats-Unis à des abonnés Français ? Rolling Eyes Et ils ne doivent pas être les seuls ...
 
FloBaoti Visiter le site web du posteur
Krysss
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 02 Fév 2007
Messages: 137
Localisation: Montpellier

URL permanente de ce messagePosté le : Mer Juin 06, 2007 14:46    Sujet du message: Aider une tanche en PHP

Non bien sur pas de page d'accueil avec de gros drapeaux pour choisir la langue... Un accueil en Anglais par defaut "Langue mondiale..." et après des petits drapeaux pour choisir sa propre langue
 
Krysss Visiter le site web du posteur
Marie-Aude
WRInaute accro
WRInaute accro

Inscrit le: 05 Juin 2006
Messages: 3388
Localisation: More than a plastic girl

URL permanente de ce messagePosté le : Mer Juin 06, 2007 15:32    Sujet du message: Aider une tanche en PHP

C'est marrant comme tout le monde m'explique que ce que je veux faire n'est pas censé être la bonne solution, alors que je demande juste comment le faire....

Very Happy

Je vous recommande donc la lecture de l'article de WRI sur le sujet plus un certain nombre de sujets équivalents.

En gros, soit on a une page tunnel pour l'entrée avec le choix de la langue -> pas bon
Soit on a une page qui choisit une langue a priori -> 1. risque de duplicate content avec la page d'index dans la langue en question en fonction de la structure du site, et pas bon pour les ceusses qui ne parlent pas cette langue
Soit on a une page avec les 4 langues, voir éventuellement les 6 pour certains sites que je fais. Lourd, et pas engageant pour les langues qui sont en bas.
Soit on décide de proposer par défaut une page dans une langue qui semble être celle de l'internaute, et on lui laisse la possibilité avec les petits drapeaux d'aller ailleurs.
Mieux.

Après la question est de savoir comment on détecte la langue préférée du visiteur. Moi je pense que la langue préférée du navigateur, quand elle est disponible, est le meilleur choix. C'est ma décision, je la maintiens, je demande juste comment faire le code php.
 
Marie-Aude Visiter le site web du posteur
Leonick
WRInaute accro
WRInaute accro

Inscrit le: 08 Aoû 2004
Messages: 8788
Localisation: Val de Marne

URL permanente de ce messagePosté le : Mer Juin 06, 2007 15:53    Sujet du message: Aider une tanche en PHP

Marie-Aude a écrit:
C'est marrant comme tout le monde m'explique que ce que je veux faire n'est pas censé être la bonne solution, alors que je demande juste comment le faire....
c'est ce qui t'a été donné
FloBaoti a écrit:
Pour les langues du navigateur, c'est un en-tête qu'envoit (ou pas !) le visiteur, rien de bien précis:
Code:
$_SERVER['HTTP_ACCEPT_LANGUAGE']
.
 
Leonick Visiter le site web du posteur
Marie-Aude
WRInaute accro
WRInaute accro

Inscrit le: 05 Juin 2006
Messages: 3388
Localisation: More than a plastic girl

URL permanente de ce messagePosté le : Mer Juin 06, 2007 19:53    Sujet du message: Aider une tanche en PHP

Leonick a écrit:
c'est ce qui t'a été donné
FloBaoti a écrit:
Pour les langues du navigateur, c'est un en-tête qu'envoit (ou pas !) le visiteur, rien de bien précis:
Code:
$_SERVER['HTTP_ACCEPT_LANGUAGE']
.


Non, ça c'est la fonction à utiliser à l'intérieur de la boucle.
Mais si je fais un fichier que j'appelle index.php et que je charge avec seulement cette ligne là, même une tanche comme moi peut se douter que ça ne marche pas.

Donc dans les dossiers de WRI il y a ça
http://www.webrankinfo.com/analyses/autres/multilingues.php

j'ai donc fait une page -http://www.***-*uarz*zate.com//test2.html pour tester, ça ne marche pas, ça ne me renvoie nulle part (page passée au validateur de code).

J'ai trouvé aussi des codes php mais manifestement ils sont prévus pour fonctionner avec Spip, et ça ne marche pas pour renvoyer sur une page html normale -http://www.i *fs*ip-0uarzazate.com/index.php

Voilou Smile


Dernière édition par Marie-Aude le Sam Juil 14, 2007 14:44; édité 1 fois
 
Marie-Aude Visiter le site web du posteur
Leonick
WRInaute accro
WRInaute accro

Inscrit le: 08 Aoû 2004
Messages: 8788
Localisation: Val de Marne

URL permanente de ce messagePosté le : Mer Juin 06, 2007 22:22    Sujet du message: Aider une tanche en PHP

Tiens, ça, tu peux tester il marche directement
Code:
<?php
$langue=explode(",",$_SERVER['HTTP_ACCEPT_LANGUAGE']);
switch ($langue[0]){
case "fr" :
  echo "france";
  exit;
case "en" :
  echo "english";
  exit;
default:
  echo "langue inconnue";
}
;
?>
après, il suffit de remplacer le echo par un include(french.php);

et ça y est, ta page sera adaptée au langage renvoyé par le navigateur
 
Leonick Visiter le site web du posteur
 
Montrer les messages depuis:   
Revenir en haut    Forum -> Développement d'un site Web Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1 - 
Connexion
Nom d'utilisateur:    Mot de passe:      Se connecter automatiquement à chaque visite    

CLIQUEZ ICI pour vous inscrire à WebRankInfo (forum, annuaire, outils...)

Connexion

© 2001-2005 phpBB Group, support français
Personnalisation : WebRankInfo ™


 ODP  Firefox  Alsacreations  annuaire webmaster Yagoort