Tiret dans mes $_GET et tiret comme séparateur => probleme :/
9 messages
• Page 1 sur 1
Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics
- ghostya
- Nouveau WRInaute

- Messages: 18
- Inscription: 8 Déc 2011
Tiret dans mes $_GET et tiret comme séparateur => probleme :/
Bonjour,
Je me retrouve bien dans une grosse cata que je n'ai pas pu anticipé car j'étais pourtant sur de mon coup.
En fait j'ai une url avec 2 parametres: $_GET['cat'] et $_GET['page'].
Ces deux parametres peuvent contenir des lettres,chiffres et tirets.
Le problème est que j'ai choisi aussi comme séparateur d'url le caractère tiret (-).
Donc quand je charge une url du type:
www.monsite.com/categorie-1-page-2.html
Et bien il me dit que mon $_GET['cat'] vaut "categorie" alors qu'il devrait récupérer "categorie-1".
Ma règle est la suivante (je la mets si ça peut aider à trouver mon probleme):
Merci d'avance,
J'espere que ce n'est pas trop compliqué
Je me retrouve bien dans une grosse cata que je n'ai pas pu anticipé car j'étais pourtant sur de mon coup.
En fait j'ai une url avec 2 parametres: $_GET['cat'] et $_GET['page'].
Ces deux parametres peuvent contenir des lettres,chiffres et tirets.
Le problème est que j'ai choisi aussi comme séparateur d'url le caractère tiret (-).
Donc quand je charge une url du type:
www.monsite.com/categorie-1-page-2.html
Et bien il me dit que mon $_GET['cat'] vaut "categorie" alors qu'il devrait récupérer "categorie-1".
Ma règle est la suivante (je la mets si ça peut aider à trouver mon probleme):
- Code: Tout sélectionner
RewriteRule ([0-9a-zA-Z-]+)-([0-9a-zA-Z-]+).html /cat=$2&page=$3
Merci d'avance,
J'espere que ce n'est pas trop compliqué
-

jeanluc - WRInaute accro

- Messages: 3062
- Inscription: 3 Mai 2004
Re: Tiret dans mes $_GET et tiret comme séparateur => probleme :/
Bonjour,
Il ne faut pas demander l'impossible. Si ton URL peut être /chapeau-blanc-bonnet.html, je ne vois pas comment Apache pourrait deviner que tu veux dire "chapeau blanc" + "bonnet" plutôt que "chapeau" + "blanc bonnet".
Jean-Luc
Il ne faut pas demander l'impossible. Si ton URL peut être /chapeau-blanc-bonnet.html, je ne vois pas comment Apache pourrait deviner que tu veux dire "chapeau blanc" + "bonnet" plutôt que "chapeau" + "blanc bonnet".
Jean-Luc
- ghostya
- Nouveau WRInaute

- Messages: 18
- Inscription: 8 Déc 2011
Re: Tiret dans mes $_GET et tiret comme séparateur => probleme :/
Bonjour,
Ah bon c'est bien ce qui me semblait.
Mais bon pas évident de ne pas demander l'impossible quand on entend sur ce forum que le signe "," n'est pas bien pris en compte lors d'un partage avec le bouton partager de facebook, que le signe + est compté comme un espace, que le "_" ne permet pas de séparer deux mots pour Google... etc etc.
Que faire dans mon cas ? Quel séparateur utiliser ?
Merci encore
Ah bon c'est bien ce qui me semblait.
Mais bon pas évident de ne pas demander l'impossible quand on entend sur ce forum que le signe "," n'est pas bien pris en compte lors d'un partage avec le bouton partager de facebook, que le signe + est compté comme un espace, que le "_" ne permet pas de séparer deux mots pour Google... etc etc.
Que faire dans mon cas ? Quel séparateur utiliser ?
Merci encore
- ghostya
- Nouveau WRInaute

- Messages: 18
- Inscription: 8 Déc 2011
Re: Tiret dans mes $_GET et tiret comme séparateur => probleme :/
Test sur le type de variable ? Il s'agit de deux string comprenant donc chiffres,lettres et tirets...
Je développe bien en PHP mais je ne comprends pas ce que tu veux dire ?
Sinon quel séparateur choisir à part le tiret ?
Merci pour ta réponse ^^
Je développe bien en PHP mais je ne comprends pas ce que tu veux dire ?
Sinon quel séparateur choisir à part le tiret ?
Merci pour ta réponse ^^
-

spout - WRInaute accro

- Messages: 4382
- Inscription: 14 Mai 2003
Re: Tiret dans mes $_GET et tiret comme séparateur => probleme :/
S'il y a tjs 4 paramètres, il n'y a pas besoin de tester le type:
-http://example.com/index.php?url=categorie-1-page-2
Il y a moyen de faire bcp plus flexible qu'avec le rewrite de cette façon, et surtout, avec 1 seule règle de rewrite:
http://forum.webrankinfo.com/pratique-htaccess-lire-avant-poser-t13288 ... l#p1217718
-http://example.com/index.php?url=categorie-1-page-2
- Code: Tout sélectionner
<?php
list($cat, $catId, $page, $pageId) = explode('-', $_GET['url']);
echo "$cat $catId $page $pageId";
?>
Il y a moyen de faire bcp plus flexible qu'avec le rewrite de cette façon, et surtout, avec 1 seule règle de rewrite:
http://forum.webrankinfo.com/pratique-htaccess-lire-avant-poser-t13288 ... l#p1217718
- ghostya
- Nouveau WRInaute

- Messages: 18
- Inscription: 8 Déc 2011
Re: Tiret dans mes $_GET et tiret comme séparateur => probleme :/
Non tu ne m'as pas compris en fait ^^ Je vois ce que tu veux dire mais ce n'est pas aussi simple.
Ma premiere variable $_GET peut très bien valoir ceci: "categorie-1-6-3" et mon autre variable pareil.
Bon ce n'est pas grave je pense que je vais malheureusement devoir utiliser un autre séparateur comme l'underscore.
Merci encore à tous^^
Ma premiere variable $_GET peut très bien valoir ceci: "categorie-1-6-3" et mon autre variable pareil.
Bon ce n'est pas grave je pense que je vais malheureusement devoir utiliser un autre séparateur comme l'underscore.
Merci encore à tous^^
-

zeb - WRInaute accro

- Messages: 4569
- Inscription: 5 Déc 2004
Re: Tiret dans mes $_GET et tiret comme séparateur => probleme :/
d'un autre côté un truc du genre devrais faire la farce (dans l'esprit)
RewriteRule ([a-zA-Z-]{1,100}-[0-9]{1,4})-([a-zA-Z-]{1,100}-[0-9]{1,4}).html /cat=$2&page=$3
je connais pas l'usage du "+" les{x,y} permettent de fixer un certains nombre d’occurrences possible
RewriteRule ([a-zA-Z-]{1,100}-[0-9]{1,4})-([a-zA-Z-]{1,100}-[0-9]{1,4}).html /cat=$2&page=$3
je connais pas l'usage du "+" les{x,y} permettent de fixer un certains nombre d’occurrences possible
-

spout - WRInaute accro

- Messages: 4382
- Inscription: 14 Mai 2003
Re: Tiret dans mes $_GET et tiret comme séparateur => probleme :/
Oui OK sorry j'avais pas fait attention 
Alors fait un mix des 2 avec slashes et tirets et la méthode de rewrite avec 1 seul paramètre GET (ou QUERY_STRING ou PATH_INFO)
Alors fait un mix des 2 avec slashes et tirets et la méthode de rewrite avec 1 seul paramètre GET (ou QUERY_STRING ou PATH_INFO)
9 messages
• Page 1 sur 1
Formation recommandée sur ce thème :
Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- le meilleur séparateur : tiret ou plus ( - ou +) ?
- Le tiret gagne le match Tiret contre Underscore
- domain name : tiret ou pas tiret
- Tiret or not tiret...vos suggestions ?
- Tiret ou pas tiret
- Problème tiret URL Rewriting
- URL Rewritting : problème tiret et underscore
- Quel type de tiret vu par google + problème sur un rewriting
- Probleme avec HTTP_HOST, et domaine avec un tiret dans le nom
- L'utilisation du tiret
- L'underscore bientôt un séparateur de mots pour Google ?
- Séparateur d'URL : tiret ou underscore ? Réponse et explications
- Plusieurs tests sur le référencement en cours sur WRI
- Pourquoi il ne faut pas utiliser d'underscore dans les URL
- Bonnes pratiques de référencement : sous-domaines ou répertoires ?
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités
