/trunk/bibliotheque/metier/aGttSql.class.php |
---|
97,6 → 97,49 |
} |
/** |
* Consulter un ou plusieurs enregistrements dans la base de données. |
* Chaque requête comportant des paramêtre doivent les inclures sous la forme "#0" pour le paramêtre 0, |
* puis "#1" pour le paramêtre 1 et ainsi de suite. |
* Exemple : SELECT * FROM gestion_projet WHERE gp_id_projet = #0 |
* ou SELECT * FROM gestion_projet WHERE gp_nom_projet = "#0" |
* @return mixed false, un objet, un tableau d'objet ou rien et instancie l'objet courant. |
*/ |
public function consulter($requete, $parametres = null, $instancier = false) |
{ |
// Formatage de la requête avec les paramêtres s'il y en a |
if (!is_null($parametres)) { |
if (!is_array($parametres)) { |
$parametres = array('#0' => $parametres); |
} else { |
// Ajout d'un # devant chaque clé numérique |
if (count($parametres) > 0) { |
foreach ($parametres as $c => $v) { |
$parametres['#'.$c] = $v; |
} |
} |
} |
// Remplacement dans la requete par les valeurs des paramêtres |
$requete = strtr($requete, $parametres); |
} |
$resultat = $GLOBALS['db']->query($requete); |
(DB::isError($resultat)) ? trigger_error(GestionnaireErreur::retournerErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete), E_USER_ERROR) : '' ; |
$tab_resultat = array(); |
while ($donnees =& $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$tab_resultat[] = $this->basculerEnregistrementObjet($donnees, $instancier); |
} |
$resultat_nbre = count($tab_resultat); |
if ($resultat_nbre > 1) { |
return $tab_resultat; |
} else if ($resultat_nbre == 1) { |
return $tab_resultat[0]; |
} else if ($resultat_nbre == 0) { |
return false; |
} |
} |
/** |
* Ajouter un enregistrement dans la base de données. |
* @return true si ok, false si aucun enregistrement effectué |
*/ |
/trunk/bibliotheque/metier/ProjetCategorie.class.php |
---|
113,9 → 113,6 |
*/ |
public function consulter($cmd = '', $parametres = array(), $instancier = false) |
{ |
if (!is_array($parametres)) { |
$parametres[0] = $parametres; |
} |
switch ($cmd) { |
case ProjetCategorie::GPC_TOUS: |
$requete = 'SELECT * '. |
124,7 → 121,7 |
case ProjetCategorie::GPC_ID: |
$requete = 'SELECT * '. |
'FROM gestion_projet_categorie '. |
'WHERE gpc_id_categorie = '.$parametres[0].' '; |
'WHERE gpc_id_categorie = #0 '; |
break; |
case ProjetCategorie::GPC_ID_MAX: |
$requete = 'SELECT MAX(gpc_id_categorie) AS gpc_id_categorie '. |
133,7 → 130,7 |
case ProjetCategorie::GPC_LIBELLE: |
$requete = 'SELECT * '. |
'FROM gestion_projet_categorie '. |
'WHERE gpc_libelle = "'.$parametres[0].'" '; |
'WHERE gpc_libelle = "#0" '; |
break; |
default : |
$message = 'Commande '.$cmd.'inconnue!'; |
140,24 → 137,9 |
$e = GestionnaireErreur::formaterMessageErreur(__FILE__, __LINE__, $message); |
trigger_error($e, E_USER_ERROR); |
} |
$resultat = $GLOBALS['db']->query($requete); |
(DB::isError($resultat)) ? die (GestionnaireErreur::retournerErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ; |
$tab_resultat = array(); |
while ($donnees =& $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$tab_resultat[] = $this->basculerEnregistrementObjet($donnees, $instancier); |
return parent::consulter($requete, $parametres, $instancier); |
} |
$resultat_nbre = count($tab_resultat); |
if ($resultat_nbre > 1) { |
return $tab_resultat; |
} else if ($resultat_nbre == 1) { |
return $tab_resultat[0]; |
} else if ($resultat_nbre == 0) { |
return false; |
} |
} |
/** Afficher l'objet ProjetCategorie */ |
function afficherProjetCategorie() |
{ |
/trunk/bibliotheque/metier/Projet.class.php |
---|
162,9 → 162,6 |
*/ |
public function consulter($cmd = '', $parametres = array(), $instancier = false) |
{ |
if (!is_array($parametres)) { |
$parametres[0] = $parametres; |
} |
switch ($cmd) { |
case Projet::GP_TOUS: |
$requete = 'SELECT * '. |
173,12 → 170,12 |
case Projet::GP_ID: |
$requete = 'SELECT * '. |
'FROM gestion_projet '. |
'WHERE gp_id_projet = '.$parametres[0].' '; |
'WHERE gp_id_projet = #0 '; |
break; |
case Projet::GP_NOM: |
$requete = 'SELECT * '. |
'FROM gestion_projet '. |
'WHERE gp_nom_projet = "'.$parametres[0].'" '; |
'WHERE gp_nom_projet = "#0" '; |
break; |
case Projet::GP_ID_MAX: |
$requete = 'SELECT MAX(gp_id_projet) AS gp_id_projet '. |
187,12 → 184,12 |
case Projet::GP_ID_LIST: |
$requete = 'SELECT * '. |
'FROM gestion_projet '. |
'WHERE gp_id_projet IN ('.$parametres[0].') '; |
'WHERE gp_id_projet IN (#0) '; |
break; |
case Projet::GP_CE_CATEGORIE: |
$requete = 'SELECT * '. |
'FROM gestion_projet '. |
'WHERE gp_ce_categorie = '.$parametres[0].' '; |
'WHERE gp_ce_categorie = #0 '; |
break; |
default : |
$message = 'Commande '.$cmd.'inconnue!'; |
199,23 → 196,9 |
$e = GestionnaireErreur::formaterMessageErreur(__FILE__, __LINE__, $message); |
trigger_error($e, E_USER_ERROR); |
} |
$resultat = $GLOBALS['db']->query($requete); |
(DB::isError($resultat)) ? die (GestionnaireErreur::retournerErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ; |
$tab_resultat = array(); |
while ($donnees =& $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$tab_resultat[] = $this->basculerEnregistrementObjet($donnees, $instancier); |
return parent::consulter($requete, $parametres, $instancier); |
} |
$resultat_nbre = count($tab_resultat); |
if ($resultat_nbre > 1) { |
return $tab_resultat; |
} else if ($resultat_nbre == 1) { |
return $tab_resultat[0]; |
} else if ($resultat_nbre == 0) { |
return false; |
} |
} |
/** Afficher l'objet Projet */ |
function afficherProjet() |
{ |