Page 1 sur 1
Problème avec GET SVP
Posté : 10 août 2015, 17:32
par stephweb
Bonjour,
j'ai un petit problème avec GET, donc j'ai besoin d'un petit peu d'aide Svp
Voici mon code PHP:
Code : Tout sélectionner
<?php
if(isset($_GET['lang'])) {
echo 'OK';
}
else {
echo 'NON';
}
Et dans mon URL je tape ceci:
Et le echo m'affiche NON. Pourtant j'ai bien un GET "lang" dans mon URL.
Pourquoi il ne m'affiche pas OUi?
Merci beaucoup
Re: Problème avec GET SVP
Posté : 10 août 2015, 17:53
par Vince32
Salut,
Est-ce que tu as essayé de mettre $lang à la place de $_GET['lang']?
Est-ce que tu essaye cela sur une nouvelle installation ou est-ce que la récupération des variables get marche d'habitude sur ton serveur?
Générallement ce type de problème provient du paramètre register_globals qui est off. Si tu as accès à php ini sur ton serveur, il faut changer "register_globals false" à "register_globals true" .
Si tu n'as pas accès à php ini, modifie ton .htaccess et mets y "php_flag register_globals 1"
Si les deux solutions ne sont pas faisables pour toi alors il faut que tu place en tête de chacun de tes script : ini_set('register_globals', '1');
cheers
Re: Problème avec GET SVP
Posté : 10 août 2015, 18:01
par stephweb
Ok merci
_Est-ce que tu as essayé de mettre $lang à la place de $_GET['lang']?
_Je viens d'essayé, et ça ne marche pas.
_Est-ce que tu essaye cela sur une nouvelle installation ou est-ce que la récupération des variables get marche d'habitude sur ton serveur?
_Oui, je suis avec wamp, et d'habitude mes GET marchent.
Si tu n'as pas accès à php ini, modifie ton .htaccess et mets y "php_flag register_globals 1"
_je viens d'essayer, ça ne change rien.
_Si les deux solutions ne sont pas faisables pour toi alors il faut que tu place en tête de chacun de tes script : ini_set('register_globals', '1');
_ça ne change rien non plu.
Merci
Re: Problème avec GET SVP
Posté : 10 août 2015, 18:09
par Vince32
Cela ne me semblait pas être cela en effet car récupérer les variables $_GET fonctionne même quand register_globals est off.
essaye de faire print_r($_GET); pour voir ce qu'il y a dans le tableau $_GET.
est-ce que c'est un serveur dédié vps mutualisé?
dans quelle configuration est-ce que la récuperation des variables $_GET fonctionne?
Re: Problème avec GET SVP
Posté : 10 août 2015, 18:21
par stephweb
ok merci.
_est-ce que c'est un serveur dédié vps mutualisé?
_je suis en local avec wamp
Le print_r m'affiche ceci:
En fait, je récupère cette page dynamiquement d'une base de donnée (j'ai créé un petit CMS pour ajouter des pages dynamiquement)
Code : Tout sélectionner
<?php
if(isset($_GET['url']) && preg_match("/^[a-z0-9\-]+$/", $_GET['url'])) {
$url = $_GET['url'];
}
Et ensuite je fait cette ré-écriture d'URL:
Code : Tout sélectionner
# => re-écritures d'url pour les pages en GET
RewriteRule ^([a-z0-9\-]+)$ page?url=$1 [L]
Les GET marchent avec des pages en dur (fichier.php).
Mais la, avec une page que je récupère dynamiquement, je ne sais pas comment y faire marcher.
Re: Problème avec GET SVP
Posté : 10 août 2015, 18:35
par stephweb
Du coup, c'est bon. sujet résolu.
j'ai ajouté dans mon htaccess ceci:
Code : Tout sélectionner
RewriteRule ^([a-z0-9\-]+)?lang=([a-z0-9?&\-]+)$ page?url=$1&lang=$2 [L]
merci
Re: [RESOLU] Problème avec GET SVP
Posté : 11 août 2015, 16:01
par Vince32
Salut,
Si tu veux utiliser d'autre paramètre d'url en plus de lang, je te conseille de faire cela :
cela renvoit toute la chaine query_string, c'est mieux!