Is this the correct approach to an OOP design structure in php?
- by Silver89
I'm converting a procedural based site to an OOP design to allow more easily manageable code in the future and so far have created the following structure:
/classes
/templates
index.php
With these classes:
ConnectDB
Games
System
User
User   -Moderator
User   -Administrator
In the index.php file I have code that detects if any $_GET values are posted to determine on which page content to build (it's early so there's only one example and no default):
function __autoload($className) {
    require "classes/".strtolower($className).".class.php";
}
$db = new Connect;
$db->connect();
$user = new User();
if(isset($_GET['gameId']))
{       
    System::buildGame($gameId);
}
This then runs the BuildGame function in the system class which looks like the following and then uses gets in the Game Class to return values, such as $game->getTitle() in the template file template/play.php:
function buildGame($gameId){
    $game = new Game($gameId);
    $game->setRatio(900, 600);
    require 'templates/play.php';
}
I also have .htaccess so that actual game page url works instead of passing the parameters to index.php
Are there any major errors of how I'm setting this up or do I have the general idea of OOP correct?