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 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
|
<?php
class Inscription_Membre//Rôle représente les inscriptions des membres
{
private $_pseudo;
private $_password;
public function hydrate(array $data) {//hydratation de l'objet "$membre"
foreach ($data as $key => $value) {
$method = 'set'.ucFirst($key);
if(method_exists($this, $method)) {
$this->method($value);
}
}
}
//Setters
public function setPseudo($pseudo) {
$this->_pseudo = $pseudo;
}
public function setPass($pass) {
$this->_password = $pass;
}
//Getters
public function getPseudo() {
return $this->_pseudo;
}
public function getPass() {
return $this->_password;
}
}
class Manager_Membre{//Gère les membres
private $_db; // Instance de PDO
public function __construct($db) {
$this->setDb($db);
}
public function addMember($membre){
$req = $this->_db->prepare('INSERT INTO membre(pseudo, pass, inscript_date) VALUES(:pseudo, :pass, now())');
$req->bindValue(':pseudo', $membre->getPseudo());
$req->bindValue(':pass', $membre->getPass());
$req->execute();
}
public function setDb(PDO $db) {
$this->_db = $db;
}
}
$membre = new Inscription_Membre([
'pseudo' => 'Victor',//$_POST['pseudo']
'pass' => 'truc'//$_POST['pass']
]);
$db = new PDO('mysql:host=localhost;dbname=exo_crud;charset=utf8', 'root', '', array(PDO::ATTR_ERRMODE =>PDO::ERRMODE_EXCEPTION ));//Objet de l'instance PDO
$manager = new Manager_Membre($db);
$manager->addMember($membre); |