Problème de variables dans mon rewriting, valeur limitée ??

Discussion dans 'URL Rewriting et .htaccess' créé par efrancilien, 7 Juin 2008.

  1. efrancilien
    efrancilien Nouveau WRInaute
    Inscrit:
    7 Juin 2008
    Messages:
    3
    J'aime reçus:
    0
    Bonjour j'ai le souci suivant.

    j'ai dans mon fichier .htaccess la syntaxe suivante :
    Code:
    RewriteRule ^motscles,(.*),([a-z0-9A-Z]+)\.html$  /recherche.php?var1=$1&var2=$2 [L]
    Sur ma page test j'ai créer deux liens par image pour tester le rewriting dans une boucle.
    Les variables sont ensuite transmises à une requete Sql ... et ma page recherche m'affiche un catalogue.

    Code:
    lien1a : recherche.php?var1=pommes&var2=AbCd0
    lien1b : motscles,pommes,AbCd0.html
    Code:
    lien2a : recherche.php?var1=poires&var2=AxSD1d
    lien2b : motscles,poires,AbCd0.html
    ...

    Dans les deux cas le rewriting fontionne bien !
    J'arrive toujours sur la bonne page mais lorsque Var2 à une longeur de chaine plus grande
    le lien html me renvoi un erreur SQL comme si la Var2 n'existait pas ou etait eronnée alors qu'en version php, tout fonctionne !
    Exemple :
    Code:
    lien3a : recherche.php?var1=poires&var2=AxSD1dVFtRz03459Rf8xCs [L] (PAGE TROUVEE  - SQL OK)
    lien3b : motscles,poires,AxSD1dVFtRz03459Rf8xCs.html (PAGE TROUVEE - SQL PAS DE REPONSE TROUVEES)
    Je croyais que du moment que la page s'affichait, tout devait fonctionner pareil ?
    La longueur de la valeur d'une variable est elle limitée dans le rewritting ???
    Sinon d'où provenir le problème, je tourne en rond depuis toute la soirée !!

    Merci d'avance pour votre lumière.
     
  2. Vap
    Vap WRInaute impliqué
    Inscrit:
    17 Juin 2007
    Messages:
    983
    J'aime reçus:
    0
    Imprime la veluer des variables dans ta page avant d'interrroger la base de donnée. Tu verra bien ce qui se passe.

    Je n'ai rien lu sur une limite en longueur des variables, mais elle existe peut etre.
     
  3. KOogar
    KOogar WRInaute accro
    Inscrit:
    16 Novembre 2004
    Messages:
    4 643
    J'aime reçus:
    82
    Re: Problème de variables dans mon rewriting, valeur limitée

    Pas de limite d'Apache mais vu que la longueur de l'url réécrite est limité à 256 caractères. La variable pourra faire max ~250 caracteres
     
  4. efrancilien
    efrancilien Nouveau WRInaute
    Inscrit:
    7 Juin 2008
    Messages:
    3
    J'aime reçus:
    0
    Problème de casse en retour de $_GET

    voilà le resulat :

    Code:
    Valeur de $_GET['var2'] recupérée par la version php
    D0DhTJWHioccKtmXOSnQU4Wb09FtRfrV

    Code:
    Valeur de $_GET['var2'] recupérée par la version rewittée
    d0dhtjwhioccktmxosnqu4wb09ftrfrv
    Je précise que le lien 1 et 2 de depart contient bien dans les deux cas :
    Code:
    D0DhTJWHioccKtmXOSnQU4Wb09FtRfrV
    Pourquoi mon $_GET['var2'] issu de mon rewritting modifie t'il la casse de certains caractères et comment eviter qu'il le fasse ?

    merci encore.
     
  5. Vap
    Vap WRInaute impliqué
    Inscrit:
    17 Juin 2007
    Messages:
    983
    J'aime reçus:
    0
    Ca met en minuscule apparament donc. Mais ça ne le fait pas avec des chaines plus courtes?

    Sinon, on m'a toujours dit que c'était pas une bonne idée d'utiliser des majuscules dans les URL... Bon, ça ne résoud pas le problème, ça le contourne.

    Quelle version d'apache tu as?
     
  6. efrancilien
    efrancilien Nouveau WRInaute
    Inscrit:
    7 Juin 2008
    Messages:
    3
    J'aime reçus:
    0
    Pour la version apache, c'est celle installée avec le kit EasyPh 1.8
    En fait, j'ai fait une erreur d'analyse, ce n'est pas une question de longueur de chaine mais bien un probleme de casse.
    Toutes les majuscules de l'URL sont transformées en minuscules par le serveur au moment du rewriting.
    Concernant la valeur, je la récupère d'une API que j'exploite, donc je ne peux pas la modifier !

    N'ayant pas trouvé comment faire directement, je me suis monté un fonction qui crypte la valeur dans l'url et qui la décrypte ensuite sur la page cible, je n'ai trouvé que cela pour résoudre mon problème. Pas super catholique mais au moins tout fonctionne désormais !

    Merci pour vos réponses à tous.

    Ps voici le code utilisé, on sait jamais çà peut servir à d'autres !

    Code:
    Function Crypte($Chaine) {
    		$PassCrypte="";
    		$keys = array("a" => "00", "b" => "01", "c" => "02", "d" => "03", "e" => "04", "f" => "05", 
                  "g" => "06", "h" => "07", "i" => "08", "j" => "09", "k" => "10", "l" => "11", 
                  "m" => "12", "n" => "13", "o" => "14", "p" => "15", "q" => "16", "r" => "17", 
                  "s" => "18", "t" => "19", "u" => "20", "v" => "21", "w" => "22", "x" => "23", 
                  "y" => "24", "z" => "25", 
                  "A" => "26", "B" => "27", "C" => "28", "D" => "29", "E" => "30", "F" => "31", 
                  "G" => "32", "H" => "33", "I" => "34", "J" => "35", "K" => "36", "L" => "37", 
                  "M" => "38", "N" => "39", "O" => "40", "P" => "41", "Q" => "42", "R" => "43", 
                  "S" => "44", "T" => "45", "U" => "46", "V" => "47", "W" => "48", "X" => "49", 
                  "Y" => "50", "Z" => "51",
    			  "0" => "aa", "1" => "bb", "2" => "cc", "3" => "dd", "4" => "ee", "5" => "ff",
    			  "6" => "gg", "7" => "hh", "8" => "ii", "9" => "jj"); 
     
    		$number = strlen($Chaine); 
    		for ($i=0; $i<$number; $i++) { 
    			$PassCrypte.=$keys[substr($Chaine, $i, 1)];
    		}
    return $PassCrypte;
    }





    Code:
    function Decrypte ($Chaine){
    		$PassDeCrypte="";
    		$keys = array("00" => "a", "01" => "b", "02" => "c", "03" => "d", "04" => "e", "05" => "f", 
    	              "06" => "g", "07" => "h", "08" => "i", "09" => "j", "10" => "k", "11" => "l", 
    	              "12" => "m", "13" => "n", "14" => "o", "15" => "p", "16" => "q", "17" => "r", 
    	              "18" => "s", "19" => "t", "20" => "u", "21" => "v", "22" => "w", "23" => "x", 
    	              "24" => "y", "25" => "z", 
    	              "26" => "A", "27" => "B", "28" => "C", "29" => "D", "30" => "E", "31" => "F", 
    	              "32" => "G", "33" => "H", "34" => "I", "35" => "J", "36" => "K", "37" => "L", 
    	              "38" => "M", "39" => "N", "40" => "O", "41" => "P", "42" => "Q", "43" => "R", 
    	              "44" => "S", "45" => "T", "46" => "U", "47" => "V", "48" => "W", "49" => "X", 
    	              "50" => "Y", "51" => "Z",
    				  "aa" => "0", "bb" => "1", "cc" => "2", "dd" => "3", "ee" => "4", "ff" => "5",
    				  "gg" => "6", "hh" => "7", "ii" => "8", "jj" => "9"); 
    			$number = strlen($Chaine); 
    			for ($i=0; $i<$number; $i=$i+2) {
    			$PassDeCrypte.=$keys[substr($Chaine,$i,2)];
    			}
    return $PassDeCrypte;
    }	
    [/code]
     
Chargement...
Similar Threads - Problème variables rewriting Forum Date
Problème d'url Rewriting avec des variables URL Rewriting et .htaccess 23 Novembre 2013
URL Rewriting à plusieurs variables / problèmes de tirets Débuter en référencement 16 Décembre 2009
URL Rewriting problème de la présence de variables URL Rewriting et .htaccess 4 Janvier 2009
Problème URL rewriting avec 3 variables URL Rewriting et .htaccess 1 Octobre 2005
Problème: nombre de variables dans l'URL et rewriting URL Rewriting et .htaccess 1 Mars 2005
Problème variables $_POST non accessible en mode "prerender". Développement d'un site Web ou d'une appli mobile 15 Août 2015
L'ajax, problème d'appel et de modification de variables Développement d'un site Web ou d'une appli mobile 24 Février 2012
Problème de redirection avec variables URL Rewriting et .htaccess 22 Juillet 2011
Problème lors de "sécurisation" des variables. Développement d'un site Web ou d'une appli mobile 19 Février 2010
Problème de récupération des variables Développement d'un site Web ou d'une appli mobile 10 Octobre 2009
[résolu] problème de variables chez OVH Développement d'un site Web ou d'une appli mobile 21 Février 2009
[solv] Probleme IIS/PHP/Seagull et recuperation de variables Développement d'un site Web ou d'une appli mobile 28 Novembre 2007
Problème avec variables contenant "-" URL Rewriting et .htaccess 1 Août 2007
Probleme de regles avec des parametre variables URL Rewriting et .htaccess 1 Février 2006
Probleme de variables php Problèmes de référencement spécifiques à vos sites 22 Septembre 2005
Problème variables php, URGENT Administration d'un site Web 13 Juin 2005
Problème d'indexation avec des variables PHP Problèmes de référencement spécifiques à vos sites 22 Avril 2005
Petit probleme de variables php Administration d'un site Web 23 Octobre 2004
[PHP] problème valeur de variables Problèmes de référencement spécifiques à vos sites 21 Mai 2004
Problème avec plucieures variables et l'urw ... URL Rewriting et .htaccess 31 Mai 2003