Salut à tous, j'ai une petite question sur les bonnes pratiques à avoir en programmation orienté objet.
Quelle est la méthode la plus logique parmi ses trois ou une 4^^, sur l'utilisation des objets pour l'insertion en base de données. L'une je passe les valeurs à ajouter dans les paramètres de la méthode et l'autre je défini les valeurs des variables de l'objet
Méthode 1
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 class maClasse{ var $id; var $valeur; function update($id,$valeur){ $query = "UPDATE table SET valeur = '".$valeur."' WHERE id='".$id."' "; $result = mysqli_query ($link,$query); etc ..... } } $maClasse = new maClasse; $maClasse->update($id,$valeur);
Méthode 2
Un membre d'un autre forum m'a proposé cette 3ème méthode
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 class maClasse{ var $id; var $valeur; function update(){ $query = "UPDATE table SET valeur = '".$this->valeur."' WHERE id='".$this->id."' " $result = mysqli_query ($link,$query); etc ..... } } $maClasse = new maClasse; $maClasse->id = 10; $maClasse->valeur = 'test'; $maClasse->update();
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 class maClasse{ protected $id; protected $valeur; function __construct($id, $val){ ... } function save(){ if(this->existeDeja(){ $this->update(); } else{ $this->insert() } } protected function update(){ $query = "UPDATE table SET valeur = '".$this->valeur."' WHERE id='".$this->id."' " $result = mysqli_query ($link,$query); etc ..... } protected function insert(){ $query = "insert into table ...' " $result = mysqli_query ($link,$query); etc ..... } } $maClasse = new maClasse(10, 'test'); $maClasse->save();
Merci
Partager