[myframework] - class sql

Description

CakePHP, Symphony, tans de framework déjà éxsitant sur le web donne envie de les utiliser directement pour créer des sites internet.
Mais comment sont créé ces frameworks? Tel est la question que je me suis pausé il y a quelque temps.

Je pense qu'une des solutions de cette étude est de créer un pseudo-framework personnel qui pourrai alors mieux me faire comprendre leur fonctionnement.

La première étape de cette création est de créer un module pour la base de donnée. Le but : simplifier l'accès à la base sql tout en récupérant le plus facilement aux données.

Voila donc le module que j'ai créé, il se compose de trois classes :
  • Object : Une classe qui permette d'étendre les fonctions des autres classes
  • SqlObject : la classe pour créer une connection a la base de donnée
  • QueryObject : la classe pour gérer les requêtes SQL


Un exemple d'utilisation est donnée dans la source.

Nota : les fonctions forum_encode() et forum_decode() n'ont pas été implémenté, mais il exsiste assez d'exemple sur ce site pour les créer.

Source / Exemple :


$sqlquery = New SqlObject("localhost","root","");
$sqlquery->setdb("rezid-inscription");
$query = $sqlquery->query(SQL_WHERE,"rezid_user",array("id"=>123),array("nom"=>"MOI") ,array(SQL_AND => 1) )  ;
echo $query->name()."<br/>" ;
print_r($query->result) ;
echo "<br/>".$query->query;
echo "<br/>".$query->sql_error;

Conclusion :


Il reste encore quelque point a peaufiné, surtout l'accès au variable interne des classes.

Nota : Le code sources est assez bien documenté, il devrai suffire a comprendre le fonctionnement du module.

Nota 2 : une connaissance poussé du fonctionnement des classes est souhaitable pour comprendre ce code.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.