Jump to content
xisto Community
Sign in to follow this  
Blessed

Php Bbcode bbcode for your forum/website/news..

Recommended Posts

A simple BBcode class

<?php //	Filename: bbcode.php//	Version: 	0.1//class bbcode { 	function code_box($text)	{		$output = "<div class=\"code\"><h6>Code</h6>\\1</div>";		return $output;		}	function quote($text)	{		$output = "<blockquote><h6>Quote:</h6>\\1</blockquote>";		return $output;		}		function htmlout($text) 	{ 		$text = stripslashes($text); 		$text = htmlspecialchars($text);	 		$text = nl2br($text); 				 		return $text; 	} 	function parse($text)  	{		// First: If there isn't a "[" and a "]" in the message, don't bother.		$text = " " . $text;		if (! (strpos($text, "[") && strpos($text, "]")) )		{			return $text;			}		else		{			// de uiteindelijke code 			$text = $this->htmlout($text); 					$text = preg_replace("/\\[b\\](.+?)\[\/b\]/is",'<b>\1</b>', $text); 			$text = preg_replace("/\\[i\\](.+?)\[\/i\]/is",'<i>\1</i>', $text); 			$text = preg_replace("/\\[u\\](.+?)\[\/u\]/is",'<u>\1</u>', $text); 			$text = preg_replace("/\[s\](.+?)\[\/s\]/is",'<s>\1</s>', $text); 						$text = preg_replace("/\[code\](.+?)\[\/code\]/is","".$this->code_box('\\1')."", $text); 			$text = preg_replace("/\[quote\](.+?)\[\/quote\]/is","".$this->quote('\\1')."", $text); 				$text = eregi_replace("\\[img]([^\\[]*)\\[/img\\]","<img src=\"\\1\">",$text);  			$text = eregi_replace("\\[size([^\\[]*)\\]([^\\[]*)\\[/size\\]","<font size=\"\\1px\">\\2</font>",$text); 			$text = eregi_replace("\\[color=([^\\[]*)\\]([^\\[]*)\\[/color\\]","<font color=\"\\1\">\\2</font>",$text);				return $text;		}	 	} }?>
Example

<?phpinclude('bbcode.php');$bbcode = new bbcode;$my_content = '[b]This is Bold[/b], [s]Strike[/s]';$bbcode->parse($my_content);?>

Have fun

if you want me to add more options feel free to ask
Edited by Blessed (see edit history)

Share this post


Link to post
Share on other sites

Here's something that i accidentally discovered a while back :lol:
How to write with bbcode...

<?php$mycode = '<?php echo("hello");?> [b]<html>[/b]';$stvarno = array ("<", ">", "[b]", "[/b]");$zamjenjeno = array ("<",">", "<b>", "</b>");$code = str_replace($stvarno, $zamjenjeno, $mycode);echo ("$code");?>

Here's the link to the topic.

I see that you are using a bunch of code for that, and i would like to hear advantages of coding that way. Looks like OOP to me. A thing i'll need to learn in near future. Thanks

Share this post


Link to post
Share on other sites

Hey this is really cool i could use this on my site sometime! Only if I had a use for it... I see you only included the normal bbcodes. Maybe try in the next version adding some more advanced ones, like centered text, spoiler, and that kind of stuff. Thanks!

Share this post


Link to post
Share on other sites

I tried to output this code of yours but id didnt do nothing with this

<?phpinclude('bbcode.php');$bbcode = new bbcode;$my_content = '[b]This is Bold[/b], [s]Strike[/s]';$bbcode->parse($my_content);?>

What do i need to echo to get $my_content bbcoded!? Sorry i'm a oop newbie

Share this post


Link to post
Share on other sites

Need a BB on my website http://www.notrac.net/

Php Bbcode

 

Replying to Blessed

 

Need help to write a html code / bbcode that I can put on my website.

 

The members would like to write news on their profilepage without writing webmaster a mail. It don't have to be very pro but keep it simple.

 

Help? Please write to me by mail.

 

With kind regards

 

Vagabondo

 

-reply by Terje Jensen

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.