Version complète: sur le forum Webmaster Hub : Fonction PHP inverse de l'url rewriting
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > PHP
papa
Bonjour,

Après bien des essais de contournement divers et varier notre site d'annonce s'est enfin mis à l'URL rewriting
Seulement PB:

notre script php réutilise l'URL dans certaine page pour changer l'ordre des annonces en remplaçant une variable $ORDER de l'url

Si la variable est écrite _ORDER_2.html, bien entendu, elle est ignorée

Plutôt que de tout récrire (ce que je ne saurai de toute façon pas faire) je souhaiterai trouver une fonction $url = invers-urlrewriting ($GLOBALS[REQUEST_URI])
qui me permette de traiter le nouveau lien à partir de l'url PHP retrouver
pour ensuite lui réappliquer la fonction $url=lienurlrewriting($url)

En clair je souhaiterai obtenir la fonction inverse de celle là :
(Dan doit bien la connaitre, merci au passage)

CODE
function lienurlrewriting($url)
{
    if (eregi("(.*).php(.*)",$url,$regs)) {
 $monurl = $regs[1];
 $geturl = $regs[2];
 while (eregi("(.*)(\?|&)([^=]+)=([^=]*)(.*)",$geturl,$regs)) {
     $geturl = $regs[1]."_".$regs[3]."_".$regs[4].$regs[5];
 }
 $url = $monurl.$geturl;
    } elseif(eregi("(.*).php",$url,$regs)) {
 $url = $regs[1];
    }
    return $url.".html";
}

Est-ce que quelqu'un l'aurai en poche ?

Merci à tous

papa
Dan
CITATION(papa @ mercredi 20 juillet 2005, 09h38)
(Dan doit bien la connaitre, merci au passage)
*

Je vois qu'on me prête des qualités que je n'ai pas laugh.gif

Ben non, je ne connaissais pas cette fonction. Tu l'utilises dans quel script ?
Et pourquoi ne pas modifier cette fonction pour qu'elle traite directement la variable ORDER ? Comment utilises-tu cette variable ORDER ?

Dan
papa
hoops ! whistling.gif

Désolé, la fonction vient de http://www.webmaster-experience.net qui dans sa page remercie Dan pour son article sur le rewriting.

En fait mon PB est que je greffe la fonction rewriting sur un site existant dont les fonctions sont interconnectées et complexes.
(page de ref : http://www.louer-en-france.com/locations-d...H=-&MARSEARCH=- )

N'étant pas développeur chevronné, je prefererai ne pas perturber le script existant.

En fait je voudrait juste traduire ça:

RewriteRule (.*)(_.+)_([^_]+)_([^_&]*)([^_]*)\.html $1$2&$3=$4$5\.html [N]
RewriteRule (.*)_([^_]+)_([^_]*)(.*)\.html $1.php?$2=$3$4 [L]
RewriteRule ^(.*).html $1.php [L]


en langage PHP

Comme ça, avec cette fonction, je récupère mon URL php en début de page

je la traite sans rien changer de mes pages

et je la remet en rewrite html dans les liens que je veux.

ça serait plus simple et moins impactant que de traiter variable par variable le format _...._
erwinol
T'aurais pas simplement besoin de $_SERVER["PHP_SELF"] ??
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.