need help with bbcode

Discussion in 'PHP' started by David Holland, Dec 9, 2010.

  1. #1
    I want users to add videos on my site.

    I am new to this so i dont now where i install any of this on my site

    All i have is this, but what over files do i need to make and where do i put them

    also i know $videoquery below is how it will identify the video but how do i use it

    <?php
        function bb_parse($string) {
            while (preg_match_all('`\[(.+?)=?(.*?)\](.+?)\[/\1\]`', $string, $matches)) foreach ($matches[0] as $key => $match) {
                list($tag, $param, $innertext) = array($matches[1][$key], $matches[2][$key], $matches[3][$key]);
                switch ($tag) {
                    case 'b': $replacement = "<strong>$innertext</strong>"; break;
                    case 'i': $replacement = "<em>$innertext</em>"; break;
                    case 'size': $replacement = "<span style=\"font-size: $param;\">$innertext</span>"; break;
                    case 'color': $replacement = "<span style=\"color: $param;\">$innertext</span>"; break;
                    case 'center': $replacement = "<div class=\"centered\">$innertext</div>"; break;
                    case 'quote': $replacement = "<blockquote>$innertext</blockquote>" . $param? "<cite>$param</cite>" : ''; break;
                    case 'url': $replacement = '<a href="' . ($param? $param : $innertext) . "\">$innertext</a>"; break;
                    case 'img':
                        list($width, $height) = preg_split('`[Xx]`', $param);
                        $replacement = "<img src=\"$innertext\" " . (is_numeric($width)? "width=\"$width\" " : '') . (is_numeric($height)? "height=\"$height\" " : '') . '/>';
                    break;
                    case 'video':
                        $videourl = parse_url($innertext);
                        parse_str($videourl['query'], $videoquery);
                        if (strpos($videourl['host'], 'youtube.com') !== FALSE) $replacement = '<embed src="http://www.youtube.com/v/' . $videoquery['v'] . '" type="application/x-shockwave-flash" width="425" height="344"></embed>';
                        if (strpos($videourl['host'], 'google.com') !== FALSE) $replacement = '<embed src="http://video.google.com/googleplayer.swf?docid=' . $videoquery['docid'] . '" width="400" height="326" type="application/x-shockwave-flash"></embed>';
                    break;
                }
                $string = str_replace($match, $replacement, $string);
            }
            return $string;
        }
    ?>
    PHP:
     
    David Holland, Dec 9, 2010 IP