Page 1 of 1

Good + Free alternatives to vBulletin and PhpBB?

Posted: Tue Nov 20, 2007 10:47 am
by JAB Creations
I've been messing with PhpBB in place of vBulletin however apparently the PhpBB team thinks I should not be allowed to handle my clientside as I dictate. I'm looking for a competent alternative where the developers won't mix their personal bias thus making it difficult just to include an XML declaration. Apparently the only reason is because of IE, so I'm not competent to come up with my own solution? Not the point and not interested in debating.

If any one can relate the Sphider open source search engine works beautifully! You can include your own PHP (and thus your own headers) and everything (though took some modifications). I'd prefer to use something as open ended as that for forums. Forum suggestions?

Posted: Tue Nov 20, 2007 1:01 pm
by alex.barylski
http://punbb.org/
http://getvanilla.com/

I believe both are open source...

Posted: Tue Nov 20, 2007 2:35 pm
by Ambush Commander
I use Phorum

Posted: Tue Nov 20, 2007 3:54 pm
by matthijs
Fudforum might be worthy to look at. Ilia Alshanetsky is involved in it's development

Posted: Tue Nov 20, 2007 4:17 pm
by RobertGonzalez
useBB is a decent app also.

Re: Good + Free alternatives to vBulletin and PhpBB?

Posted: Sat Sep 13, 2008 11:02 pm
by supermike
I just installed PunBB 1.3 RC, and then installed the beta PM extension for it which isn't exactly beta at all. Within 2 hours I also converted it over to using TinyMCE rich editor. I must say, this is a long ways away from phpBB, which I found quite aggravating. I don't know why phpBB has to do things in such a convoluted way.

Now, sure, PunBB could use things like template pages rather than interspersing HTML and PHP, but at least the page count is small and I can find what I want fairly easily and go to work. However, I think this will come back to bite PunBB in the foot some day. I mean, I can expect with the way it's designed that only a few small mods will install properly on it without one mod breaking another mod.

If I were to build a forum system, I would use PHP Alternative Syntax and stick the templates in a separate directory. And you would only see things like:

<?= $VAR ?>

in the templates, never rotating recordsets and so on. Instead, that sort of thing would exist in the PHP functions.

Next, I would use an object layer for the meat of it so that you wouldn't see SQL in the middle of the PHP. Instead, I would have a database class, a single file storing parameterized SQL, and another class that is the core class that does the CRUD operations for the forum. The PHP pages would then mostly be glue, interacting with the core class, which then interacts with the DB class and the parameterized SQL, in order to get things done.

For styling, I'd keep it down to just a few files.

For making it easy to extend, I would make every data input and data output first go through a few functions. That way, mods to the system could simply inject their logic into these few functions and rework the forum into something else entirely.

Now, some people would probably use a formal framework like CodeIgniter, CakePHP, Symfony, Smarty, Zend, and so on -- but then that puts the forum at the mercy of that framework. So, as long as you abstract HTML from PHP from SQL from database and use a little of OOP, and keep the file count low, and as long as you think about an easy and consistent way for modifications to be implemented, that is good enough to satisfy a lot of people.

Anyway, for now, I like PunBB and I recommend it.

You may have also found that there's a fork of PunBB called FluxBB. Well, what I found with Flux is that it doesn't even have a working Private Messaging system in it like PunBB does, and whereas Flux though they could fork PunBB and take even further -- I now see very active development with PunBB. So, my chips are on PunBB.

P.S. PunBB has a very odd name, but oh well. At least it works.

Re:

Posted: Sun Sep 14, 2008 5:15 am
by jayshields
Ambush Commander wrote:Phorum

Re: Good + Free alternatives to vBulletin and PhpBB?

Posted: Wed Sep 17, 2008 1:18 pm
by supermike
BTW, if you ever want to build a modular piece of PHP software that allows others to easily build extensions for it, you should take a look at how PunBB (and FluxBB) do their extensions:

http://fluxbb.org/wiki/developing_extensions

It's a fascinating read. One of the key pieces of the way the extensions work is here:

Code: Select all

($hook = get_hook('vf_start')) ? eval($hook) : null;
As you can see, they spread these hook points through critical pieces of their project, and this has evolved over time to an acceptable level. When a page loads, it first reads all the hooks to see if there's something applicable for this page. If so, then it loads it in when it gets to the hook instruction like above. This allows developers to override key pieces of logic. The only catch is that there's no guaranteed way to ensure one's hook doesn't clobber another person's hook, but I don't think you could ever fix that without rewriting the thing.

As for the rest of Pun and Flux source code, here's what I like and don't like:

Likes
- very small number of files -- en guarde, phpBB!

- they use very few CSS files and so it's extremely easy to retheme -- puts the smack down on phpBB again

- very small number of database tables -- phpBB could learn a thing or two from this

- the extension mechanism

- they put the colors in a separate CSS file -- never thought to do that before but it makes perfect sense

- they put a legend at the top of their CSS files

- the CSS theme ("Oxygen") is generic but really sleek -- you can take it so many different places pretty quickly by adjusting the CSS or tacking on your own CSS file to adjust things, or, you can edit the template files.

Dislikes
- mixing SQL with logic -- either use parameters in SQL from a central file and pull it in, or use a thin ORM like Outlet ORM. It's kind of hard and unorganized to read SQL with all these concats stuck in it.

- they did move a little into having a thin, simplistic template strategy with str_replace(), but they didn't go far enough because they're still mixing way too much HTML and PHP together. Sure, I think with any thin template strategy you will have some HTML in PHP because it makes sense that way sometimes, but they made it a bit too thin for my tastes. I mean, if a PHP page has like over 60 lines of HTML in it and supposedly has a template strategy, it's time to rethink this thing.

Re: Good + Free alternatives to vBulletin and PhpBB?

Posted: Wed Sep 17, 2008 4:55 pm
by RobertGonzalez
eval() === evil().