Comment passer la limitation a 9 paramètres en url rewriting

Discussion dans 'Problèmes de référencement spécifiques à vos sites' créé par Kijer, 8 Octobre 2007.

  1. Kijer
    Kijer WRInaute discret
    Inscrit:
    9 Septembre 2006
    Messages:
    109
    J'aime reçus:
    0
    Bonjour,

    J'ai entendu parler de mettre nos différents pramètres dans un array afin de outre passer cette limitation, auriez vous un exemple de comment le contourner ?

    Merci d'avance..
     
  2. adilo
    adilo Nouveau WRInaute
    Inscrit:
    6 Octobre 2005
    Messages:
    1
    J'aime reçus:
    0
    Bonjour,
    Pour passer un array dans l URL utilise la forme suivante :
    http://www.site.com/index.php?id=1&user[nom]=nom&user[prenom]=prenom
    Mais je ne sais si ça permet de passer la limitation.
     
  3. Tilt
    Tilt WRInaute impliqué
    Inscrit:
    26 Mars 2005
    Messages:
    761
    J'aime reçus:
    0
    Tu peux passer une seule variable contenant plusieurs valeurs séparées par un ... séparateur.
    ex. : var1_var2_var3 etc...
    Et ensuite tu scindes la chaîne pour récupérer chaque variable.
     
  4. Kijer
    Kijer WRInaute discret
    Inscrit:
    9 Septembre 2006
    Messages:
    109
    J'aime reçus:
    0
    Je n'arrive pas a conceptualiser le procédé à appliquer..

    Voici mes regles actuelles :
    Code:
    RewriteEngine on
    
    # nom_departement-34.html
    RewriteRule ^([[:alpha:]-]+)-([[:alnum:]]+)\.html$  villes_du_dep.php?dep=$2 [L]
    
    # nom_departement-34-M.html
    RewriteRule ^([[:alpha:]-]+)-([[:alnum:]]+)-([[:alpha:]]+)\.html$  villes_du_dep.php?dep=$2&lettre=$3&ndep=$1
    
    # nom_departement-34-nom_ville-13622.html
    RewriteRule ^([[:alpha:]-]+)-([[:alnum:]]+)-([[:alpha:]-]+)-([[:digit:]]+)\.html$ categories_metiers.php?dep=$2&idv=$4
    
    # nom_departement-34-nom_ville-13622-nom_categorie-18.html
    RewriteRule ^([[:alpha:]-]+)-([[:alnum:]]+)-([[:alpha:]-]+)-([[:digit:]]+)-([[:alpha:]-]+)-([[:digit:]]+)\.html$  metiers_categories.php?dep=$2&idv=$4&idc=$6
    
    # nom_departement-34-nom_ville-13622-nom_categorie-18-nom_metier-1.html
    RewriteRule ^([[:alpha:]-]+)-([[:alnum:]]+)-([[:alpha:]-]+)-([[:digit:]]+)-([[:alpha:]-]+)-([[:digit:]]+)-([[:alpha:]-]+)-([[:digit:]]+)\.html$ liste_des_clients.php?dep=$2&idv=$4&idc=$6&idm=$8
    
    # 34-nom_ville-13622-nom_categorie-31-nom_metier-82-nom_client-86.html
    RewriteRule ^([[:alnum:]]+)-([[:alpha:]-]+)-([[:digit:]]+)-([[:alpha:]-]+)-([[:digit:]]+)-([[:alpha:]-]+)-([[:digit:]]+)-([[:alnum:]-]+)-([[:digit:]]+)\.html$ fiche_du_client.php?dep=$1&idv=$3&idc=$5&idm=$7&idcl=$9 
    
    
    
    Techniquement, j'aimerai rajouter un dernier champ "page = 1,2,3,4,5.." a mon client, mais ca me fait le 10 eme parametre..
     
  5. Kijer
    Kijer WRInaute discret
    Inscrit:
    9 Septembre 2006
    Messages:
    109
    J'aime reçus:
    0
    Je cherche pas à ce que l'on me mache le travail, loin de là, je préfère apprendre à le faire pour être autonome..

    Mais j'ai pas forcément compris le concept à appliquer :/
     
  6. Kijer
    Kijer WRInaute discret
    Inscrit:
    9 Septembre 2006
    Messages:
    109
    J'aime reçus:
    0
    Encore moi :)

    Sur un sujet parlant du même soucis, un memebre a répondu :

    Malheureusement, le sujet date un peu et le membre peu actif, je ne peux pas lui demandé directement..

    Voyai vous le concept ?


    Merci beaucoup de votre aide précieuse.
     
  7. Tilt
    Tilt WRInaute impliqué
    Inscrit:
    26 Mars 2005
    Messages:
    761
    J'aime reçus:
    0
    Dans ton cas il y a une solution BEAUCOUP plus simple, qui t'évite de dépasser la limite des 9 :

    Modifier les parenthèses capturantes !

    Code:
    # 34-nom_ville-13622-nom_categorie-31-nom_metier-82-nom_client-86.html
    RewriteRule ^([[:alnum:]]+)-[[:alpha:]-]+-([[:digit:]]+)-[[:alpha:]-]+-([[:digit:]]+)-[[:alpha:]-]+-([[:digit:]]+)-[[:alnum:]-]+-([[:digit:]]+)-[[:alnum:]-]+-([[:digit:]]+)\.html$ fiche_du_client.php?dep=$1&idv=$2&idc=$3&idm=$4&idcl=$5&page=$6 
    
    ******
    Maintenant la solution au problème de la limitation à 9 paramètres

    Ton rewriting pour l'instant, c'est du genre :
    rewriterule mon_url-variable1-variable2-...etc index.php?variable1=$1&variable2=$2... jusqu'à 9.

    Tu pourrais avois quelque chose de plus simple comme

    rewriterule mon_url-variable /index.php?variable=$1

    variable représente tous tes paramètres concaténés, séparés par un séparateur ("--","-","_",ce que tu veux)

    Voici la dernière règle de ton htaccess :
    Au lieu de ça tu mets :
    ^(.*)\.html$ fiche_du_client.php?variable=$1

    Tu me suis ?

    Ensuite, sous php cette fois, tu n'as plus qu'à récupérer $_GET["variable"] et à l'exploser avec des expressions régulières:

    Code:
    <?php
    $v=explode("ton séparateur",$_GET["variable"]);
    $dep=preg_match("`^([a-z0-9]+)$`i",$v[0],$out)?$out[1]:false;
    $idv=preg_match("`^([a-z0-9]+)$`i",$v[2],$out)?$out[1]:false;
    $idc=preg_match("`^([a-z0-9]+)$`i",$v[4],$out)?$out[1]:false;
    $idm=preg_match("`^([a-z0-9]+)$`i",$v[6],$out)?$out[1]:false;
    $idcl=preg_match("`^([a-z0-9]+)$`i",$v[8],$out)?$out[1]:false;
    $page=preg_match("`^([a-z0-9]+)$`i",$v[10],$out)?$out[1]:false; // il est là ton 10ème paramètre
    ?>
     
  8. Kijer
    Kijer WRInaute discret
    Inscrit:
    9 Septembre 2006
    Messages:
    109
    J'aime reçus:
    0
    Merci beaucoup, je vais analyser ton post avec bcp de soin et te remercie énormément
     
Chargement...
Similar Threads - passer limitation paramètres Forum Date
Google Ads : Comment passer le guide de configuration ? AdWords 29 Décembre 2019
Sur quels critères se baser pour passer à un serveur dédié ? Administration d'un site Web 2 Juillet 2019
Passer des 404 spammées en 410 avec htaccess URL Rewriting et .htaccess 18 Juin 2019
Passer mon htaccess de http à https ? URL Rewriting et .htaccess 27 Janvier 2019
Passer mon site en https, galère en vue Développement d'un site Web ou d'une appli mobile 26 Janvier 2019
Conserver des 301 ou les passer en 410 ? Crawl et indexation Google, sitemaps 4 Janvier 2019
Passer une variable en dossier URL Rewriting et .htaccess 19 Novembre 2018
Passer en http/2 : avantages, dangers Débuter en référencement 19 Octobre 2018
Passer une variable JS vers PHP Développement d'un site Web ou d'une appli mobile 25 Septembre 2018
AMP : quand et pourquoi passer en AMP Débuter en référencement 24 Juillet 2018
  1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
    Rejeter la notice