le_fleau
samedi 2 septembre 2006 à 00:41
Merci à vous deux pour vos réponses ! Finalement, j'ai créé deux balises, une pour Youtube, l'autre pour Dailymotion. Bien que pour dailymotion ce ne soit pas pratique, car l'id est difficilement récupérable, et pour l'utilisateur basique d'internet, ça risque d'être confus. Le lecteur commun demandait visiblement de connaitre l'url exacte du film ce qui peut etre un peu compliqué. En tous cas, pour youtube, c'est tout à fait simple, il suffit de recopier l'id dans l'url. Je me suis donc inspiré des liens que vous m'avez donné, j'ai un peu retravaillé ça à ma sauce (bien que je ne sois pas un expert en expressions regulières) et voilà ce que ça donne :
CODE
<?php
$chaine = preg_replace('`\[dailymotion](.+?)\[/dailymotion]`si','\n\t\t\t\t\t<object type="application/x-shockwave-flash" data="http://www.dailymotion.com/swf/$1" width="370" height="310">\n\t\t\t\t\t<param name="movie" value="http://www.dailymotion.com/swf/$1" />\n\t\t\t\t\t<strong>Flash non detecté</strong>\n\t\t\t\t\t</object>\n\t\t\t\t\t<a href="http://www.dailymotion.com">\n\t\t\t\t\t<br />\n\t\t\t\t\t<strong>\n\t\t\t\t\tPowered by Dailymotion\n\t\t\t\t\t</strong>\n\t\t\t\t\t', $chaine);
$chaine = preg_replace('`\[youtube](.+?)\[/youtube]`si','\n\t\t\t\t\t<object type="application/x-shockwave-flash" data="http://www.youtube.com/v/$1" width="370" height="304">\n\t\t\t\t\t<param name="movie" value="http://www.dailymotion.com/swf/$1" />\n\t\t\t\t\t<strong>Flash non detecté</strong>\n\t\t\t\t\t</object>\n\t\t\t\t\t<a href="http://www.youtube.com/watch?v=$1">\n\t\t\t\t\t<br />\n\t\t\t\t\t<strong>\n\t\t\t\t\tVoir le film sur Youtube\n\t\t\t\t\t</strong>\n\t\t\t\t\t', $chaine);
?>
Pouvez vous le cas échéant m'aider à améliorer ce code ? N'y a t-il pas de risque de sécurité majeur ?
En ce qui concerne Dailymotion, je pense qu'ils seront obligé de s'adapter et de simplifier leur gestion des URL car de plus en plus de webmasters vont vouloir permettre aux membres de diffuser leurs vidéos, comme pour les images.