8798 sujets

Développement web côté serveur, CMS

Bonjour a tous;

Pour aller tout droit au but j'ai une page html du type :

<html>
des trucs et des balises
<!--BEGIN_IFRAME_SUB(fichier1.xml)END_IFRAME_SUB--> 
encore des trucs et des balises
<!--BEGIN_IFRAME_SUB(fichier2.xml)END_IFRAME_SUB--> 
encore des trucs et des balises
</html>



Le problème c'est que je doit remplacer chaque chaque commentaire en une IFRAME qui a pour source le fichier xml cité du genre :


$replace='<IFRAME src=\"chemin du fichier xml\" frameborder=1 >Votre navigateur ne supporte pas les iframes, veuillez utiliser une version plus récente </IFRAME>';


Je récupère mon fichier grâce à :

if (file_exists($filename))
		$content=file_get_contents($filename,false);



J'ai essayé des tas de substr_replace() sans succès et je suis nul en expressions régulières.
y a t il une âme charitable pour m'aider svp
merci.
Salut,

Voici une proposition :
preg_replace(
    '/<!--BEGIN_IFRAME_SUB\(([^)]+)\)END_IFRAME_SUB-->/',
    '<iframe src="$1" frameborder="1" >Votre navigateur blabla</iframe>',
    $tonTemplateHTML
);
Merci beaucoup je vais essayer de suite.
entre temps j'ai trouvé une autre solution sans les regex :


$content = str_replace('<!--BEGIN_IFRAME_SUB(', '<iframe src="', $content);
$content = str_replace(')END_IFRAME_SUB-->', '"></iframe>', $content);