J'ai un petit problème donc je viens vous demander un peu d'aide :
J'ai une classe Demande relié donc à une table Demande dans ma base de données.
J'ai les attributs suivants :
class Demande
{
/******************************************************************/
/* Attributs privés de la classe */
/******************************************************************/
private $id;
private $id_AD;
private $id_objet;
private $commentaire;
private $date_crea;
private $date_modif;
/******************************************************************/
/* Getters / Setters */
/******************************************************************/
public function setID($intID) //Définition de l'ID
{
$this->id = $intID;
}
public function getID()
{
return $this->id;
}
Et le constructeur suivant :
//Constructeur
public function __construct($intAD, $intID_objet, $stringCommentaire, $dateDate_crea, $dateDate_modif) {
$this->setID($intID);
$this->setID_AD($intAD);
$this->setID_objet($intID_objet);
$this->setCommentaire($stringCommentaire);
$this->setDateCrea($dateDate_crea);
$this->setDateModif($dateDate_modife);
}
Comme l'ID est auto-incrémenté, je ne le construit pas.Et enfin, une fonction d'affichage :
//Fonction affichant la demande
public function afficher()
{
echo '*****************Affichage de la demande n°'.$this->getID().'***************** <br/>';
echo ('ID de l\'AD : '.$this->getID_AD().'<br/>');
echo ('ID de l\'objet : '.$this->getID_objet().'<br/>');
echo ('Commentaire : '.$this->getCommentaire().'<br/>');
echo ('Date de création : '.$this->getDateCrea().'<br/>');
echo ('Date de modification : '.$this->getDateModif().'<br/>');
}
Or, je voudrais savoir comment avoir l'ID de la demande, car, bien entendu, elle n'apparaît pas.J'ai exploré deux solutions :
-Construire l'ID (ce dont je ne vois pas l'intérêt étant donné qu'il est auto-incrémenté dans ma base de données).
-Faire une requête de récupération de l'ID dans mon Setter.
J'aimerais donc savoir ce que vous pensez de ces deux solutions, et pourquoi pas m'en donner une meilleure
Merci d'avance.