Archive | June, 2003

PHPseagull 0.1.4-beta Released

Posted on 05 June 2003 by Demian Turner

The PHPseagull application framework is now in version 0.1.4-beta, lots of minor bugfixes since the last version and some added functionality.

  • the project now has a forum for user feedback/queries
  • you can now browse CVS
  • the API docs have been updated and are easier to read thanks to a new version of phpDocumentor
  • you can grab the source directly from anonymous CVS
  • intro docs now translated into Spanish

Improvements include:

  • Changed package status to beta 😉
  • Added PEAR’s Net_UserAgent class for browser handling
  • Improved handling of replying to messages, changed logic based on browser detection
  • Implemented first step of basic locale handling, timezone correctly reflected
  • Cleaned up phpdoc comments, regenerated api docs with much improved phpDocumentor 1.2.0a
  • Added pagination to inbox
  • Updated Emailer (PEAR::Mail wrapper) class for quick emails
  • Made session validation method more rigourous to protect against session vulnerabilities exposed by use_trans_sid = on
  • Integrated Benchmark_Timer, ability to set markers
  • Fixed tabs to spaces to conform to PEAR standards
  • Updated PEAR libraries Benchmark, HTML_Common, Validate and DB_DataObject

Thanks for all the input so far, sometime next week I hope to get back on the docs and write a basic ‘how to create a module’ tutorial.

Comments (0)

Storing Hierarchical Data in a Database

Posted on 05 June 2003 by Demian Turner

Thanks to Harry for this link.

Whether you want to build your own forum, publish the messages from a mailing list on your Website, or write your own cms: there will be a moment that you’ll want to store hierarchical data in a database. And, unless you’re using a XML-like database, tables aren’t hierarchical; they’re just a flat list. You’ll have to find a way to translate the hierarchy in a flat file.

Storing trees is a common problem, with multiple solutions. There are two major approaches: the adjacency list model, and the modified preorder tree traversal algorithm.

The ‘adjacency list’ is more commonly known as the id-parent id method, or more recently as the brain dead method, and it works great.  The following article covers the theory on the first page, but more interestingly it gives a good explanation of the modified preorder tree traversal algorithm on pages 2 and 3, familiar if you have ever worked with classes like PEAR::Tree.

Comments (0)

The 3rd Annual Nigerian EMail Conference

Posted on 01 June 2003 by Demian Turner

Spotted at

“Like most Nigerians, you’re probably finding that it’s increasingly difficult to earn a decent living from email. That’s why you need to attend the 3rd Annual Nigerian EMail Conference.”

After you’ve received your first 500 or so Nigerian “confidential” petitions to make you the heir to foreign fortunes, stuff like this is must read material 😉

Comments (0)



Demian Turner's currently-reading book recommendations, reviews, favorite quotes, book clubs, book trivia, book lists