eregi_replace() und Youtube Link

ciberjoerg

Erfahrenes Mitglied
Hi @ All.

Folgendes Problem da Youtube das embet System wieder umgebaut hat muss ich nun mal wieder mein bbcode System überarbeiten.

Nur Jetzt scheint das nicht zu funktionieren.
PHP:
$entry = eregi_replace("\[yt\]http://www.youtube.com/watch?v=([^\[]+)\[/yt\]","<iframe title=\"YouTube video player\" class=\"youtube-player\" type=\"text/html\" width=\"320\" height=\"240\" src=\"http://www.youtube.com/embed/\\1\" frameborder=\"0\" allowFullScreen></iframe>",$entry);

Es wird nur der eingegebene bbcode angezeigt anstatt das Video
 
Hey!

Also ich bin ein absoluter Anfänger was RegularExpressions angeht, aber ich hab das mal so versucht:
PHP:
$entry2 = preg_replace("/\[yt\]http:\/\/www.youtube.com\/watch\?v=([a-zA-Z0-9])/","$1",$entry);

Nur bekomm ich so den Endtag nicht weg, also hab ich dann Quick'n'Dirty das gemacht:
PHP:
  $entry2 = substr($entry2, 0, strlen($entry2) - 5);
  echo "<iframe title=\"YouTube video player\" class=\"youtube-player\" type=\"text/html\" width=\"320\" height=\"240\" src=\"http://www.youtube.com/embed/".$entry2."\" frameborder=\"0\" allowFullScreen></iframe>";

Nja, vielleicht hilfts dir ja ein bisschen weiter :)

greez
THEJS
 
Ich habs inzwischen auch gelöst.

PHP:
$entry = eregi_replace("\[yt=http://www.youtube.com/watch\?v=([^\[]+)\]","<iframe title=\"YouTube video player\" class=\"youtube-player\" type=\"text/html\" width=\"400\" height=\"260\" src=\"http://www.youtube.com/embed/\\1\" frameborder=\"0\" allowFullScreen></iframe>",$entry);
oder man macht es so:
PHP:
$entry = eregi_replace("\[yt\]http://www.youtube.com/watch\?v=([^\[]+)\[/yt\]","<iframe title=\"YouTube video player\" class=\"youtube-player\" type=\"text/html\" width=\"400\" height=\"260\" src=\"http://www.youtube.com/embed/\\1\" frameborder=\"0\" allowFullScreen></iframe>",$entry);
 
Zurück