Aller au contenu

Sujets conseillés

Posté

Bonjour, voilà je cherche à repérer une ou/et plusieur balise(s) dans un texte.

premier problème je ne trouve que la 1ère balise et pas les suivantes.

2ème problème je voudrai remplacer cette balise dans un texte par une chaine qui elle meme contiendra les paramettres de la balise.

j'espère que je suis pas trop brouillon dans mon explication :blush:

j'ai pondu ce petit code, mais c'est pas encore gagné :sick:

<?

$chaine = "coucou voici une chaine -> <balise ref=popo.swf width=200 height=100> <- qui contient plusieur -> <balise ref=toto.swf width=300 height=400> <- balises.\n";
echo $chaine."<br><br>\n";

if(eregi("<balise ref=([^>]*) width=([^>]*) height=([^>]*)>", $chaine, $reg1)){

echo $reg1[1]." ".$reg1[2]." ".$reg1[3]."<br>\n";

$swf = "<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0\" width=\"".$reg1[2]."\" height=\"".$reg1[3]."\">
<param name=\"movie\" value=\"".$reg1[1]."\">
<param name=\"quality\" value=\"high\">
<embed src=\"".$reg1[1]."\" quality=\"high\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\" type=\"application/x-shockwave-flash\" width=\"".$reg1[2]."\" height=\"".$reg1[3]."\"></embed>
</object>";

echo $swf."\n<br><br>\n";
}else{
echo "<b>la balise n'as pas été trouvée!</b>\n";
}


if(eregi("([[:alpha:]])*<balise ref=([^>]*) width=([^>]*) height=([^>]*)>([[:alpha:]])*", $chaine, $reg2)){
$txt = "reg0=".$reg2[0]." reg1=".$reg2[1]." reg2=".$reg2[2]." reg3=".$reg2[3]." reg4=".$reg2[4]." reg5=".$reg2[5]."<br>\n";
echo $txt;
}else{
echo "<b>la balise n'as pas été trouvée!</b>\n";
}

?>

merci à vous

Posté

je ne comprend pas pourquoi j'obtiens ce résultat :

reg0= reg1= reg2=popo.swf reg3=200 reg4=100 reg5=

pourquoi les instances 0, 1 et 5 sont nul ?

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...