Je bloque sur un truc en php dans un exercice j'ai :
2 tables MySQL compsées de :
MOT :
mot_id
mot_val
mot_compte
Lien :
lien_id
lien_mot1
lien_mot2
lien_compte
Tout d'abord il est demandé de crée 2 classes dans un fichier php pour modeliser les tables SQL Mot et Lien , ça je l'ai faite avec constructeur geters et seteur .
apres il est demandé de crée une classe NET singleton à une seule instance qui stocke toutes les instantes de MOT et Lient ( c'est ici que je bloque je sais comment déclaré une classe singleton mais le fait de stocker deux classes dans une autre çe je sais pas faire ) je vous donne mon code je sais pas trop si il est bon ou pas
<?php
class Mot
{
private $mot_id,$mot_val,$mot_compte;
/*
public function __construct()
{
}
*/
//getters
public function __get($tmp){
if($tmp=="mot_id") { return $this->mot_id; }
if($tmp=="mot_val") { return $this->mot_val; }
if($tmp=="mot_compte") { return $this->mot_compte; }
}
//setters
public function __set($tmp,$vale){
if($tmp=="mot_id") { $this->mot_id=$vale; }
if($tmp=="mot_val") { $this->mot_val=$vale; }
if($tmp=="mot_compte") { $this->mot_compte=$vale; }
}
//Methode Incrementer
public function incrementmot(){
$this->mot_compte = $this->mot_compte +1;
}
}
class Lien
{
private $lien_id,$lien_mot1,$lien_mot2,$lien_compte;
/*
public function __construct()
{
}
*/
//getters
public function __get($tmp){
if($tmp=="lien_id") { return $this->lien_id; }
if($tmp=="lien_mot1") { return $this->lien_mot1; }
if($tmp=="lien_mot2") { return $this->lien_mot2; }
if($tmp=="lien_compte") { return $this->lien_compte; }
}
//setters
public function __set($tmp,$vale){
if($tmp=="lien_id") { $this->lien_id=$vale; }
if($tmp=="lien_mot1") { $this->lien_mot1=$vale; }
if($tmp=="lien_mot2") { $this->lien_mot2=$vale; }
if($tmp=="lien_compte") { $this->lien_compte=$vale; }
}
//Methode Incrementer
public function incrementlien(){
$this->lien_compte = $this->lien_compte +1;
}
}
class Net
{
private static $_instance = null;
private $mot_id,$mot_val,$mot_compte,$lien_id,$lien_mot1,$lien_mot2,$lien_compte;
//Constructeur de la classe singleton Net
private function __construct( $_mot_id,$_mot_val,$_mot_compte,$_lien_id,$_lien_mot1,$_lien_mot2,$_lien_compte) {
$this->mot_id = $_mot_id;
$this->mot_val = $_mot_val;
$this->mot_compte = $_mot_compte;
$this->lien_id = $_lien_id;
$this->lien_mot1 = $_lien_mot1;
$this->lien_mot2 = $_lien_mot2;
$this->lien_compte = $_lien_compte;
}
// * Méthode qui crée l'unique instance de la classe si elle n'existe pas encore puis la retourne.
public static function getInstance($_mot_id,$_mot_val,$_mot_compte,$_lien_id,$_lien_mot1,$_lien_mot2,$_lien_compte) {
if(is_null(self::$_instance)) {
self::$_instance = new Net($_mot_id,$_mot_val,$_mot_compte,$_lien_id,$_lien_mot1,$_lien_mot2,$_lien_compte);
}
return self::$_instance;
}
}
?>