Remplacer Iframe pas Div Css : chemins relatifs

WRInaute occasionnel
Bonjour,

j'ai un soucis sur lequel je colle depuis deux jours : afin d'éviter les problèmes de référencement sur GG j'ai remplacé les iframes de mes pages par les css overflow de manière à ce que le DIV qui remplace l'Iframe s'ajuste en fonction de la longueur du texte à afficher.

J'ai donc créé un Div auquel j'aplique la class overflow et dans lequel je fais un include vers la page que je veux insérer dans le DiV. Jusqu'ici aucun problème tout fonctionne parfaitement.

En revanche la page distante que j'appelle a des liens relatifs c'est à dire que les liens ne contiennent pas l'url totale mais juste le chemin du ficher cible. Ex : Au lieu de linker vers h**p://www.sitedistant.com/pagesdistante2.htm le lien est du type "pagedistante2.htm.

Du coup lorsqu'on clique sur un de ces liens on ne se retrouve pas sur h**p://www.sitedistant.com/pagesdistante2.htm mais h**p://www.monsite.com/pagesdistante2.htm (page qui n'existe pas bien sur...).

J'imagine que non mais pensez vous qu'il existe une solution pour résoudre ce probleme (sans changer tous les liens de la page distante...) ?
 
WRInaute occasionnel
En y réfléchissant un des moyens pour éviter ce probleme serait d'appeller la page distante autrement que par un include php. En effet avec une iframe le chemin des liens est bien respecté alors que c'est uniquement lorsque j'utilise l'include php que les liens sont cassés.

Reste à trouver un autre moyen d'appeller cette page dans le div...Quelle galère l'informatique lol :)
 
Nouveau WRInaute
un include d une page dans un "div" fait un copier coller du texte dans le fichier initial. donc effectivment les liens relatifs se sont par rapport au fichier incluant que inclué. a toi de rajouter dans toutes tes url la variable $_SERVER[http_racine] (ou document_root) pour ne plus avoir ce genre de problèmes
 
WRInaute occasionnel
Je suis pas très calé en php comment je dois utiliser la commande $_server dont tu parles ? J'ai tenté l'include suivant mais ca ne fonctionne pas :

Code:
<?
include($_SERVER['http://www.sitedistant.com/pagedistante.htm']);
?>

Sinon j'ai également essayé avec document root mais du coup là il cherche la page sur mon site un peu comme lorsque je clique sur les liens apres un include php classique.

Code:
<? include ($DOCUMENT_ROOT.'/'.$RS_DIR.'http://www.sitedistant.com/pagedistante.htm');?>
 
WRInaute occasionnel
Personne ne peut me donner un petit coup de main sur ce sujet et me dire quel code php inserer pour que le chemin vers l'url distante soit absolu de manière a eviter les liens cassés ?
 
Discussions similaires
Haut