i usually just setup my database abstraction class inside the construct of the class that needs it.
example;
<?php
class clsMysql
{
function query() {}
function fetch() {}
}
?>
then, my class 'forum', needs to use this db class. so...
<?php
class clsForum
{
private $mysql;
function __construct {
$this->mysql = new clsMysql();
}
function getposts() {
$this->mysql->query("SELECT * posts FROM forum");
// blah blah
}
}
?>
from what i gather, this is how it should be done (though i am by no meens an expert), unless of course my clsForum was to extend the functionality of my clsMysql class. then you would make it an extended class.