prb url rewriting côté PHP
9 messages
• Page 1 sur 1
Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics
- starmagh
- Nouveau WRInaute

- Messages: 14
- Inscription: 24 Avr 2005
prb url rewriting côté PHP
Bonjour,
je rencontre un petit problème avec l'url rewriting, en particulier avec la partie php.
le php m'étant assez étranger, il m'est difficile de trouver seul la réponse à mon problème ; je remercie donc d'avance celles et ceux qui se pencheront sur les quelques lignes suivantes:
dans le .htaccess, j'ai ceci:
je veux donc afficher:
monsite.com/annonces/page15.htm par exemple
ça marche mais le code PHP m'oblige à afficher ceci:
monsite.com/index/annonces/page15.htm
et mon soucis c'est que je ne vois pas où faire la modif pour virer ce répertoire /index/ de l'url rewritée.
voici ce que j'ai côté PHP:
Quelqu'un aurait-il une idée ?
Encore merci d'avance

je rencontre un petit problème avec l'url rewriting, en particulier avec la partie php.
le php m'étant assez étranger, il m'est difficile de trouver seul la réponse à mon problème ; je remercie donc d'avance celles et ceux qui se pencheront sur les quelques lignes suivantes:
dans le .htaccess, j'ai ceci:
- Code: Tout sélectionner
RewriteEngine On
RewriteBase /
Options -MultiViews
RewriteRule ^annonces/page([0-9]*)\.htm$ index.php?a=2&b=$1 [L]
RewriteRule ^annonces/categorie([0-9]*)\.htm$ index.php?a=5&b=$1 [L]
...
je veux donc afficher:
monsite.com/annonces/page15.htm par exemple
ça marche mais le code PHP m'oblige à afficher ceci:
monsite.com/index/annonces/page15.htm
et mon soucis c'est que je ne vois pas où faire la modif pour virer ce répertoire /index/ de l'url rewritée.
voici ce que j'ai côté PHP:
- Code: Tout sélectionner
function formatUrls($string,$entireString)
{
$string = stripslashes($string);
$endUrl = strstr($entireString, ">") ? ">" : "";
$string = trim($string,"\"");
$string = trim($string,"'");
$newUrl = "href=\"";
if(!stristr($string,$this->configuration_data->index.php."?"))
return $newUrl.$string."\" ".$endUrl;
$urlParts = explode(".php?", $string);
$urlGetVariables = preg_split("/[&]/", $urlParts[1]);
$newUrl .= $urlParts[0];
$a=0;
for($lcv=0;$lcv<count($urlGetVariables);$lcv++)
{
$urlGetVariableValues = explode("=", $urlGetVariables[$lcv]);
if(!$urlGetVariableValues[1])
$urlGetVariableValues[1] = "0";
switch($urlGetVariableValues[0])
{
case "a";
$a = $urlGetVariableValues[1];
switch($urlGetVariableValues[1])
{
case 2:
$newUrl .= "/annonces";
break;
case 5:
$newUrl .= "/annonces";
break;
case 6:
$newUrl .= "/annonces";
break;
case 8:
$newUrl .= "/details";
break;
case 11:
$newUrl .= "/annonces";
break;
case 14:
$newUrl .= "/imprimer";
break;
case 15:
$newUrl .= "/images";
break;
default:
return "href=\"".$string."\" ".$endUrl;
break;
}
break;
case "b":
switch($a)
{
case 2:
$newUrl .= "/page".$urlGetVariableValues[1];
break;
case 5:
$newUrl .= "/categorie".$urlGetVariableValues[1];
break;
case 6:
$newUrl .= "/vendeur".$urlGetVariableValues[1];
break;
case 8:
$newUrl .= "/categorie".$urlGetVariableValues[1];
break;
case 11:
$newUrl .= "/categorie".$urlGetVariableValues[1];
break;
case 14:
$newUrl .= "/annonce".$urlGetVariableValues[1];
break;
case 15:
$newUrl .= "/annonce".$urlGetVariableValues[1];
break;
}
break;
case "c":
switch($a)
{
case 1:
$newUrl .= "/1-semaine";
break;
case 2:
$newUrl .= "/2semaines";
break;
case 3:
$newUrl .= "/3semaines";
break;
case 4:
$newUrl .= "/1jour";
break;
}
break;
case "page":
$newUrl .= "/page".$urlGetVariableValues[1];
break;
default:
return "href=\"".$string."\" ".$endUrl;
break;
}
}
return $newUrl.".htm\" ".$endUrl;
}
Quelqu'un aurait-il une idée ?
Encore merci d'avance
-

YoyoS - WRInaute accro

- Messages: 3835
- Inscription: 14 Sep 2006
Salut, pourquoi tu n'apprendrais pas le php et ferais toi même la fonction ? Parce que la j'ai l'impression qu'elle fait plein de trucs inutiles pour l'utilisation que tu veux en faire.
Que veux-tu donner en paramètres à la fonction et que veux-tu qu'elle te renvoie ?
Que veux-tu donner en paramètres à la fonction et que veux-tu qu'elle te renvoie ?
- starmagh
- Nouveau WRInaute

- Messages: 14
- Inscription: 24 Avr 2005
salut Yoyos, et merci pour ta réponse.
je souhaite simplement que la fonction php s'occupe à ma place de réécrire les liens dans mes pages, ceci pour m'éviter d'avoir à éditer x pages...
ça marche déjà avec cette fonction, mais j'ai pour résultat:
monsite.com/index/annonces/page10.htm
et je voudrais
monsite.com/annonces/page10.htm
je ne vois pas où ce code stipule qu'il faille conserver ce repertoire /index/dans l'url.
par ailleurs cette fonction fait pas mal d'autres choses parce qu'elle réécrit d'autres pages (les case a, b et c) mais si j'ai la soluce pour une page je l'ai forcément pour les autres.
le peu que je connais du php ne me permet pas de trouver la solution...
et ce n'est pas faute d'essayer de comprendre ce langage...
je souhaite simplement que la fonction php s'occupe à ma place de réécrire les liens dans mes pages, ceci pour m'éviter d'avoir à éditer x pages...
ça marche déjà avec cette fonction, mais j'ai pour résultat:
monsite.com/index/annonces/page10.htm
et je voudrais
monsite.com/annonces/page10.htm
je ne vois pas où ce code stipule qu'il faille conserver ce repertoire /index/dans l'url.
par ailleurs cette fonction fait pas mal d'autres choses parce qu'elle réécrit d'autres pages (les case a, b et c) mais si j'ai la soluce pour une page je l'ai forcément pour les autres.
le peu que je connais du php ne me permet pas de trouver la solution...
et ce n'est pas faute d'essayer de comprendre ce langage...
-

YoyoS - WRInaute accro

- Messages: 3835
- Inscription: 14 Sep 2006
YoyoS a écrit:Que veux-tu donner en paramètres à la fonction et que veux-tu qu'elle te renvoie ?
Et oui j'ai posé une question précise -_- Je comprends pas ce que tu lui donnes et ce que tu veux obtenir, alors montre moi par un exemple, comme ça je refais le processus en lisant la fonction et essaie de faire attention quand on te pose des questions sinon on avancera pas.
Bon pour résumé, de peur que t'oublie, donne les deux paramètres et le résultat
- starmagh
- Nouveau WRInaute

- Messages: 14
- Inscription: 24 Avr 2005
YoyoS a écrit:Et oui j'ai posé une question précise -essaie de faire attention quand on te pose des questions sinon on avancera pas.
Bon pour résumé, de peur que t'oublie, donne les deux paramètres et le résultat
Appelle-moi con j'te dirai rien
Voilà 3 ans que je suis inscrit sur ce forum, j'ai pu constater une réelle dégradation dans l'accueil des demandes d'aide...
Dès qu'on a le malheur de pas savoir, mieux vaut s'abstenir de demander conseil car à coup sûr on se fera prendre pour un abruti...
ma question était simple et pour réponse j'ai droit à des va-apprendre-le-php, apprends-à-lire, etc.
pitoyable et pathétique.
je me démerderai tout seul tiens.
-

olivier3249 - WRInaute passionné

- Messages: 1712
- Inscription: 22 Oct 2007
starmagh a écrit:je me démerderai tout seul tiens.
Bon au revoir alors et à l'année prochain pour ton 14 ème message!
- Vap
- WRInaute passionné

- Messages: 1090
- Inscription: 17 Juin 2007
starmag,
je parie que le .htaccess est dans le répertoire /index/, d'ou la présence de RewriteBase /, qui enlève /index/ des URL et le rajoute après réécriture.
Sinon, je ne vois pas pourquoi tu t'énerve, Yoyos a pose une question pour comprendre le problème. J'aurais posé la même question d'ailleurs!
je parie que le .htaccess est dans le répertoire /index/, d'ou la présence de RewriteBase /, qui enlève /index/ des URL et le rajoute après réécriture.
Sinon, je ne vois pas pourquoi tu t'énerve, Yoyos a pose une question pour comprendre le problème. J'aurais posé la même question d'ailleurs!
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 :
- prb url rewriting et redirection permanente
- Prb de Redirection ou rewriting / espace dans url
- prb: apache-ssl ne gere pas le php
- Racine du site deux index html et php prb référencement ?
- url réécrites coté php, RewriteRule .* index.php et page 404 qui ne marche plus
- Redirection 301 en PHP ( coté serveur )
- [Drupal] code html pour installer deux pavés de pub adsense cote a cote ?
- Test A/B - Split testing - Comment ça marche coté PHP ?
- Formmail.php ne marche pas est ce du côté de l'hébergeur ?
- [Débutant PHP] Comment afficher "l'âge" à côté du pseudo ?
Consultez la description détaillée des produits ou services de Google suivants : Google Click-To-Call, Google Checkout
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités
