zetcoby Posted May 22, 2012 Share Posted May 22, 2012 hi guys, i am trying to create a button that when u press if in the text are will appear <video>...</video> i know this is js do don't worry i will manage to do it, my problem is in php, i did a function that recognizes the link between <video>...</video> and then it embades it and shows me a youtube video instead, the problem i got is that if i have in the text area more <video>...</video>, like: bla bla bal<video>youtube link</video> and the other vid <video>youtube link</video> i dont know how to make it embade both, i dont know how to check if there is more, and the second problem i got is that all the text that was not betwen <video>...</video> will disapear after the vide is embadded, here is the code i done until now <form action="test1.php" method = "POST"> <textarea name="body" id="text" cols="30" rows="10"></textarea> <input type="submit" value = "submit"> </form> <?php function video($string){ preg_match_all("#<video\b[^>]*>(.*?)</video>#", $string, $output); preg_match_all("#(?<=v=)[a-zA-Z0-9-]+(?=&)|(?<=v\/)[^&\n]+(?=\?)|(?<=v=)[^&\n]+|(?<=youtu.be/)[^&\n]+#", $output[0][0], $match); return "<iframe width='560' height='315' src='http://www.youtube.com/embed/".$match[0][0]."' frameborder='0' allowfullscreen></iframe>"; } if (isset($_POST['body'])&&!empty($_POST['body'])) { $body = $_POST['body']; print_r(video("$body")); } ?> Link to comment https://forums.phpfreaks.com/topic/262927-embade-youtube-link-using-regexp/ Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.