phpDocumentor lodel
[ class tree: lodel ] [ index: lodel ] [ all elements ]

Class: DAO

Source Location: /lodel/scripts/dao.php

Class DAO

Class Overview

Classe gérant la DAO (Database Abstraction Object)

Cette classe définit un ensemble de méthodes permettant d'effectuer les opérations courantes sur la base de données : sélection, insertion, mise à jour, suppression. Au lieu d'effectuer soit même les requêtes SQL et de traiter les résultats SQL sous forme de tableau, les méthodes de cette classe retourne leurs résultat sous forme d'objet : les Virtual Objet (VO).

Exemple d'utilisation (factice)

  1.  $dao new DAO('personnes',true)//instantiation
  2.  $vos $DAO->find("nom LIKE('robert')""nom""nom,prenom,mail");
  3.  print_r($vos)// affiche toutes les personnes dont le nom contient robert
  4.  
  5.  $dao->deleteObject($vo[0])//suppression du premier objet

Located in /lodel/scripts/dao.php [line 79]



		
				Author(s):
		
  • Jean Lamy
  • Ghislain Picard
API Tags:
See:  controler.php
See:  view.php

Information Tags:
Version:  CVS:$Id:
Copyright:  2005, Ghislain Picard, Marin Dacos, Luc Santeramo, Gautier Poupeau, Jean Lamy, Bruno Cénou
Copyright:  2006, Marin Dacos, Luc Santeramo, Bruno Cénou, Jean Lamy, Mikaël Cixous, Sophie Malafosse
Copyright:  2007, Marin Dacos, Bruno Cénou, Sophie Malafosse, Pierre-Alain Mignot
Since:  Classe ajoutée depuis la version 0.8

Properties

Methods

[ Top ]
Descendants
Child Class Description
restricted_usersDAO Classe d'abstraction de la base de données de la table restricted_users
usergroupsDAO Classe d'abstraction de la base de données de la table usergroups
characterstylesDAO Classe d'abstraction de la base de données de la table characterstyles
relationsDAO Classe d'abstraction de la base de données de la table relations
entitytypes_persontypesDAO DAO of table entitytypes_persontypes
entities_personsDAO DAO of table entities_persons
tasksDAO Classe d'abstraction de la base de données de la table tasks
optiongroupsDAO Classe d'abstraction de la base de données de la table optiongroups
personsDAO Classe d'abstraction de la base de données de la table persons
internalstylesDAO Classe d'abstraction de la base de données de la table internalstyles
users_usergroupsDAO Classe d'abstraction de la base de données de la table users_usergroups
urlstackDAO Classe d'abstraction de la base de données de la table urlstack
search_engineDAO Classe d'abstraction de la base de données de la table search_engine
typesDAO Classe d'abstraction de la base de données de la table types
objectsDAO Classe d'abstraction de la base de données de la table objects
tablefieldsDAO Classe d'abstraction de la base de données de la table tablefields
oai_tokenDAO Classe d'abstraction de la base de données de la table oai_token
classesDAO Classe d'abstraction de la base de données de la table classes
entriesDAO Classe d'abstraction de la base de données de la table entries
textsDAO Classe d'abstraction de la base de données de la table texts
sitesDAO Classe d'abstraction de la base de données de la table sites
persontypesDAO Classe d'abstraction de la base de données de la table persontypes
entities_entriesDAO DAO of table entities_entries
sessionDAO Classe d'abstraction de la base de données de la table session
entitiesDAO Classe d'abstraction de la base de données de la table entities
entitytypes_entrytypesDAO DAO of table entitytypes_entrytypes
entitytypes_entitytypesDAO DAO of table entitytypes_entitytypes
tablefieldgroupsDAO Classe d'abstraction de la base de données de la table tablefieldgroups
entrytypesDAO Classe d'abstraction de la base de données de la table entrytypes
oailogsDAO Classe d'abstraction de la base de données de la table oailogs
optionsDAO Classe d'abstraction de la base de données de la table options
usersDAO Classe d'abstraction de la base de données de la table users
translationsDAO Classe d'abstraction de la base de données de la table translations
genericDAO Classe GenericDAO

[ Top ]
Property Summary
mixed   $cache_rightscriteria   Tableau de cache stockant les critères SQL correspondants aux droit d'accès sur les objets
string   $idfield   Champ identifiant
array   $rights   Tableau associatif avec les droits requis pour lire, écrire et protéger
string   $sqltable   Nom de la table avec et préfixe et éventuellement la jointure pour le SELECT Table name with the prefix, and potential join for views.
string   $table   Nom et classe de la table SQL
integer   $uniqueid   Uniqueid. Vrai si la table utilise une clé primaire (clé unique).

[ Top ]
Method Summary
DAO   DAO()   Constructeur de classe
void   count()   Compter le nombre d'éléments correspondant à tel critère
object Le   &createObject()   Crée un nouvel objet virtuel (VO) Create a new Value Object
boolean   delete()   Suppression d'un objet - fonction qui ne fait qu'appeller deleteObject Function to delete an object value.
boolean   deleteObject()   Suppression d'un objet ou d'un tableau d'objet (tableau d'identifiant)
boolean   deleteObjects()   Suppression de plusieurs objets suivant un critère particulier Function to delete many object value given a criteria
l'objet   find()   Trouver un objet suivant certains critères et en sélectionnant certains champs
array   findMany()   Trouver un ensemble d'objet correspondant à des critères
object un   getById()   Récuperer un objet par son identifiant
array   getByIds()   Récuperer des objects grâce aux identifiants
void   instantiateObject()   Instanciation d'un nouvel objet virtuel (VO)
void   quote()   Ajout de slashes dans champ pour la protection des données dans la requête SQL
string   rightsCriteria()   Récupère le critère SQL correspondant aux droits d'accès en lecture et en écriture
$idfield   save()   Ajout/Modification d'enregistrement Main function to add/modify records
void   _getFromResult()   Remplit un VO depuis une ligne d'un ResultSet SQL

[ Top ]
Properties
mixed   $cache_rightscriteria [line 518]

Tableau de cache stockant les critères SQL correspondants aux droit d'accès sur les objets

API Tags:
See:  DAO::rightsCriteria()
Access:  private


[ Top ]
string   $idfield [line 114]

Champ identifiant

API Tags:
Access:  private


[ Top ]
array   $rights [line 108]

Tableau associatif avec les droits requis pour lire, écrire et protéger

Assoc array with the right level required to read, write, protect

API Tags:
Access:  private


[ Top ]
string   $sqltable [line 95]

Nom de la table avec et préfixe et éventuellement la jointure pour le SELECT Table name with the prefix, and potential join for views.

API Tags:
Access:  private


[ Top ]
string   $table [line 88]

Nom et classe de la table SQL

API Tags:
Access:  private


[ Top ]
integer   $uniqueid [line 101]

Uniqueid. Vrai si la table utilise une clé primaire (clé unique).

API Tags:
Access:  private


[ Top ]
Methods
Constructor DAO  [line 126]

  DAO DAO( string $table, [boolean $uniqueid = false], [string $idfield = "id"]  )

Constructeur de classe

Positionne les variables privées de la classe.

Parameters:
string   $table:  le nom de la table et de la classe.
boolean   $uniqueid:  Par défaut à 'false'. Indique si la table utilise une clé primaire.
string   $idfield:  Par défaut à 'id'. Indique le nom du champ identifiant


[ Top ]
count  [line 336]

  void count( string $criteria  )

Compter le nombre d'éléments correspondant à tel critère

Return the number of element matching a criteria

Parameters:
string   $criteria:  Les critères SQL de la requête.


[ Top ]
createObject  [line 352]

  object Le &createObject( )

Crée un nouvel objet virtuel (VO) Create a new Value Object


API Tags:
Return:  VO instancié


[ Top ]
delete  [line 381]

  boolean delete( mixed $mixed  )

Suppression d'un objet - fonction qui ne fait qu'appeller deleteObject Function to delete an object value.

Parameters:
mixed   $mixed:  object or numeric id or an array of ids or criteria

API Tags:
Return:  un booleen indiquant l'état de la suppression de l'objet


[ Top ]
deleteObject  [line 390]

  boolean deleteObject( mixed &$mixed  )

Suppression d'un objet ou d'un tableau d'objet (tableau d'identifiant)

Parameters:
mixed   &$mixed:  object or numeric id or an array of ids or criteria

API Tags:
Return:  un booleen indiquant l'état de la suppression de l'objet


[ Top ]
deleteObjects  [line 456]

  boolean deleteObjects( string $criteria  )

Suppression de plusieurs objets suivant un critère particulier Function to delete many object value given a criteria

Parameters:
string   $criteria:  critères SQL pour la suppression

API Tags:
Return:  un booleen indiquant l'état de la suppression de l'objet


[ Top ]
find  [line 270]

  l'objet find( string $criteria, [string $select = "*"]  )

Trouver un objet suivant certains critères et en sélectionnant certains champs

Function to get a value object

Parameters:
string   $criteria:  les critères SQL de recherche
string   $select:  les critères SQL de sélection (par défaut : SELECT *)

API Tags:
Return:  virtuel trouvé sinon null


[ Top ]
findMany  [line 301]

  array findMany( string $criteria, [string $order = ''], [string $select = '*']  )

Trouver un ensemble d'objet correspondant à des critères

Function to get many value object

Parameters:
string   $criteria:  les critères SQL de recherches
string   $order:  le critère SQL de tri des résultats. (par défaut vide)
string   $select:  les champs à sélectionner. (par défaut *).

API Tags:
Return:  Un tableau de VO correspondant aux résultats de la requête


[ Top ]
getById  [line 242]

  object un getById( integer $id, [string $select = "*"]  )

Récuperer un objet par son identifiant

Function to get a value object

Parameters:
integer   $id:  l'identifiant de l'objet
string   $select:  les champs à récuperer

API Tags:
Return:  objet virtuel contenant les champs de l'objet
See:  fonction find()


[ Top ]
getByIds  [line 256]

  array getByIds( array $ids, [string $select = "*"]  )

Récuperer des objects grâce aux identifiants

Function to get many value object

Parameters:
array   $ids:  le tableau des identifiant
string   $select:  les champs à récuperer

API Tags:
Return:  un tableau d'objet virtuels
See:  fonction find(), DAO::getById()


[ Top ]
instantiateObject  [line 369]

  void instantiateObject( &$vo  )

Instanciation d'un nouvel objet virtuel (VO)

Instantiate a new object

Parameters:
   &$vo: 


Redefined in descendants as:

[ Top ]
quote  [line 223]

  void quote( object &$vo  )

Ajout de slashes dans champ pour la protection des données dans la requête SQL

Quote the field in the object

Parameters:
object   &$vo:  Objet virtuel passé par référence


[ Top ]
rightsCriteria  [line 495]

  string rightsCriteria( string $access  )

Récupère le critère SQL correspondant aux droits d'accès en lecture et en écriture

Return the criteria depending on the write/read access

Parameters:
string   $access:  le niveau d'accès pour lequel on souhaite avoir le critère SQL

API Tags:
Return:  Le critère SQL correspond au droit d'accès


[ Top ]
save  [line 142]

  $idfield save( object &$vo, [boolean $forcecreate = false]  )

Ajout/Modification d'enregistrement Main function to add/modify records

Parameters:
object   &$vo:  l'objet virtuel à sauvegarder.
boolean   $forcecreate:  Par défaut à false. Indique si on doit forcer la création.

API Tags:
Return:  l'identifiant de l'enregistrement créé ou modifié.


[ Top ]
_getFromResult  [line 527]

  void _getFromResult( &$vo, array $row, objet $vo  )

Remplit un VO depuis une ligne d'un ResultSet SQL

Parameters:
objet   $vo:  Le VO à remplir passé par référence
array   $row:  La ligne du ResultSet SQL
   &$vo: 

API Tags:
Access:  private


[ Top ]

Documentation generated on Thu, 10 Jul 2008 05:07:26 +0200 by phpDocumentor 1.4.0a2