Aller au contenu

PHP : transfomer les lien relatifs en lien absolus

Featured Replies

Posté(e)

donc voila je cherche un petit bout de code permettant de transformer tous les chemins relatifs dans une page web en chemin absolue.

ex


<a href="Html/boitier_alu.htm" target="mainFrame">Boitier Aluminium Home Made</a>


le transformer en ça

htttp://www.dark26.fr.st/Html/boitier_alu.htm" target="mainFrame">Boitier Aluminium Home Made</a>

sachnat qu'il y abeauxoup de variantes avec ../   ou ./ ou ../../    ........

Posté(e)

Alors, je ferai ça (je n'ai pas testé) :

$f = fopen("tonfichier","r");

$f2 = fopen("nouveaufichier","w+");

$ligne = fread($f,10485760);

$ligne = eregi_replace("<A HREF=\"","<A HREF=\"http://www.dark26.fr.st/",$ligne);

fputs($f2,$ligne);

fclose($f);

fclose($f2);

Et normalement ça devrait aller.

Bien sûr, ça ne marchera pas si le lien est de la forme, par exemple, <A TARGET="..." HREF="...">. Il faut que le premier paramètre soit HREF.

Et la taille maximum du fichier à traiter est de 10 Mo (mais ça se change très facilement, et je n'ai jamais vu de page web de plus de 10 Mo ;-)).

  • 2 semaines après...
Posté(e)

il n'y a pas une fonction (ou une variable?) qui permet de récupérer le nom de domaine dans l'url? Il m'a semblé avoir utilisé un truc du genre une fois mais je n'arrive plus a m'en souvenir.

Posté(e)
  • Auteur

en fait c'ets pas totalement réglé, ( voit pas du tout )

car il n'ya pas forcément que href=\

il peut y avoir des choses plus batardes du style


"center"><a href="../index.htm" 

et d'autres truc encore...

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.