Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/05/2011, 11h45   #1
Invité de passage
 
Inscription : novembre 2010
Messages : 23
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 23
Points : 2
Points : 2
Par défaut Site multilingue et choix de langue

Bonjour à tous,

J'ai un petit soucis sur mon site que je tente de rendre multilingue.
J'ai inclus des fichiers de langue qui sont appelés automatiquement en fonction de l'URL de la page (monsiste.com/index.php?lang=en).

Aussi afin de ne pas reprendre tous les liens de mon site, je redirige toutes les pages de mon site vers la meme page sur laquelle je rajoute la langue en GET.

Si le navigateur d'un internaute est en anglais monsiste.com/index.php redirigera vers monsiste.com/index.php?lang=en

Le code est le suivant :
Code :
1
2
3
4
5
6
7
8
9
10
 
$lang est la langue du navigateur (ou en Cookie ou en session)
if (!isset ($_GET['lang']))
		{ 
 
			{
				header('Location:$path."?lang=".$lang);
			}
 
		}
Cependant cela me pose un problème pour mes appels en AJAX. En effet en redirigeant la requete envoyé en AJAX j'ai l'impression de perdre les données POST de l'AJAX et rien ne se passe.
Sous firebug est inscrit :
POST http://localhost/monsite/script.php 302 Found
GET http://localhost/monsite/fr/script.php 200 OK (en URL reswriting qui redirige vers script.php?lang=fr)

Au lieu de :
POST http://localhost/studyka/site/sk/vue...on.php?lang=fr 200 OK

Ainsi l'appel AJAX ne produit rien...

Je suis conscient que mon message n'est pas très clair, je suis un peu perdu... N'hésitez pas si vous avez des questions pour que j'explicite d'autres bouts de mon code.

Merci d'avance pour vos réponses !

Ps : je précise que j'ai énormément de pages sur mon site et beaucoup d'appels en AJAX et qu'il serait donc délicat de remodifier des choses à chacun des appels sur tout le site
milman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/05/2011, 13h18   #2
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 016
Points : 5 016
Une solution pourrait être de mettre la langue en cours sur cookie afin que JavaScript puisse construire des requêtes Ajax correctement.
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/05/2011, 14h11   #3
Invité de passage
 
Inscription : novembre 2010
Messages : 23
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 23
Points : 2
Points : 2
En fait c'est exactement ce que je fais pour obtenir ma variable $lang dans le fichier appelé en AJAX.

Je regarde si la langue est en cookie sinon je regarde si elle est en session (s'il a désactivé ses cookies) sinon je prend la langue du navigateur.

Mais le soucis arrive lorsque je fais la redirection explicité précédement j'ai l'impression que mes variables "posté" dans l'ajax disparaissent au moment de la redirection...

Merci pour ton aide en tout cas !
milman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2011, 12h21   #4
Membre régulier
 
Homme
Développeur Web
Inscription : octobre 2009
Messages : 72
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Vietnam

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : octobre 2009
Messages : 72
Points : 99
Points : 99
Comment est ta requête javascript ?
Par défaut le type est GET tu dois peut-être le définir en type POST
matlow est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h14.


 
 
 
 
Partenaires

Hébergement Web