reecriture d'url et $_GET

Mammouth du PHP | 790 Messages

26 juin 2012, 11:36

Salut a tous, je rencontre un soucis...
j'ai mis en place sur un mutu OVH un fichier htaccess pour la réécriture,le voici:
#--------------------------------------------------
# Répertoire : /www/
#--------------------------------------------------
RewriteBase /
Options -Indexes
Options -Multiviews
Options +FollowSymLinks
SetEnv REGISTER_GLOBALS 0
SetEnv PHP_VER 5
RewriteEngine On
ErrorDocument 404 /404.php

#--------------------------------------------------
# Règles de réécriture d'URL :
#--------------------------------------------------

RewriteRule ^pedigree-malinois-([0-9]+)-([A-Za-z-]+)\.html$ pedigree.php?malinois=$2&nom=$3
a première vu, ça fonctionne bien mais les paramètres GET eux ne passe plus, savez vous pourquoi et comment remédier au problème ?
Les fautes de grammaire et d'orthographe contenu dans mes postes sont sous copyright, vous pouvez les utiliser pour un usage personnelle mais vous ne devrez en aucun cas les utiliser a des fins commercial sans une autorisation écrite de ma part.

ViPHP
xTG
ViPHP | 7331 Messages

26 juin 2012, 11:42

$3 ? Tu n'as que deux paramètres dans ton motif. ;)
Tu peux debugguer avec var_dump($_GET) pour vérifier ce que tu reçois bien.

Mammouth du PHP | 790 Messages

26 juin 2012, 11:51

$3 ? Tu n'as que deux paramètres dans ton motif.
tu veux dire $1 et $2 ?
Les fautes de grammaire et d'orthographe contenu dans mes postes sont sous copyright, vous pouvez les utiliser pour un usage personnelle mais vous ne devrez en aucun cas les utiliser a des fins commercial sans une autorisation écrite de ma part.

Mammouth du PHP | 790 Messages

26 juin 2012, 11:55

avec cette url réécrite (/pedigree-malinois-1-Vatan-de-la-cite-des-foucault.html) j'obtiens ca:
array(2) {
  ["malinois"]=>
  string(29) "Vatan-de-la-cite-des-foucault"
  ["nom"]=>
  string(0) ""
}
et l'url normale (/pedigree.php?malinois=1&nom=Vatan-de-la-cite-des-foucault)
array(2) {
  ["malinois"]=>
  string(1) "1"
  ["nom"]=>
  string(29) "Vatan-de-la-cite-des-foucault"
}
et en aillant corrigé le htaccess comme ca: RewriteRule ^pedigree-malinois-([0-9]+)-([A-Za-z-]+)\.html$ pedigree.php?malinois=$1&nom=$2
pour l'url réécrite, j'obtiens ca:
array(2) {
  ["malinois"]=>
  string(1) "1"
  ["nom"]=>
  string(29) "Vatan-de-la-cite-des-foucault"
}
Les fautes de grammaire et d'orthographe contenu dans mes postes sont sous copyright, vous pouvez les utiliser pour un usage personnelle mais vous ne devrez en aucun cas les utiliser a des fins commercial sans une autorisation écrite de ma part.

Mammouth du PHP | 790 Messages

26 juin 2012, 12:04

ok, merci xTG, ces quelques testes font que ca fonctionne... :D
Les fautes de grammaire et d'orthographe contenu dans mes postes sont sous copyright, vous pouvez les utiliser pour un usage personnelle mais vous ne devrez en aucun cas les utiliser a des fins commercial sans une autorisation écrite de ma part.

Mammouth du PHP | 790 Messages

26 juin 2012, 12:22

ok, aussi j'avais pas bien compris le principe, c'est a moi de réécrire les urls dans mon code, j'ai d’abord cru que ça se faisait tous seul :non: enfin je pense #-o
Les fautes de grammaire et d'orthographe contenu dans mes postes sont sous copyright, vous pouvez les utiliser pour un usage personnelle mais vous ne devrez en aucun cas les utiliser a des fins commercial sans une autorisation écrite de ma part.

ViPHP
xTG
ViPHP | 7331 Messages

26 juin 2012, 13:36

Ah bah oui, le serveur s'amuse pas à parser toutes les requêtes sortantes pour modifier les attributs href. :mrgreen: