[RESOLU] Problème avec GET SVP

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Problème avec GET SVP

Re: [RESOLU] Problème avec GET SVP

par Vince32 » 11 août 2015, 16:01

Salut,

Si tu veux utiliser d'autre paramètre d'url en plus de lang, je te conseille de faire cela :

Code : Tout sélectionner

RewriteRule ^([a-z0-9\-]+)$ page?url=$1&%{QUERY_STRING} [L]


cela renvoit toute la chaine query_string, c'est mieux!

Re: Problème avec GET SVP

par stephweb » 10 août 2015, 18:35

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: Problème avec GET SVP

par stephweb » 10 août 2015, 18:21

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:

Code : Tout sélectionner

Array ( [url] => page-test )
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

par Vince32 » 10 août 2015, 18:09

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

par stephweb » 10 août 2015, 18:01

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

par Vince32 » 10 août 2015, 17:53

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

Problème avec GET SVP

par stephweb » 10 août 2015, 17:32

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:

Code : Tout sélectionner

http://localhost/site/page-test?lang=en
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