postanowiłem nauczyć się obiektówki, ponieważ mam już jakieś podstawy z C++ to pomyślałem, że najlepszym sposobem będzie stopniowe pisanie CMS. I tak napisałem klasę artykułów:
class Article { public $title; public $content; public $date_send; public $date_publicate; public $autor_viewer; public $autor; public $status; public $short_content; public $id; public function setTitle($title) { $this -> title = $title; } public function setContent($content) { $this -> content = $content; } public function setShortContent($id) { $pdo = new PDO('mysql:host=localhost;dbname=CMS', 'root', 'vertrigo'); $pdo -> SetAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $prepare = $pdo -> prepare("SELECT * FROM articles WHERE id_article = :id"); $prepare -> bindValue(':id', $id, PDO::PARAM_INT); $prepare ->execute(); $Content = $prepare->fetch(); $this->short_content = $Content[0]; } public function AddToBase() { $pdo = new PDO('mysql:host=localhost;dbname=CMS', 'root', 'vertrigo'); $pdo -> SetAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $prepare = $pdo -> prepare("INSERT INTO articles (article_title, article_content, date_publicate, autor) VALUES (:article_title, :article_content, :date_publicate, :autor)"); $prepare -> bindValue(':article_title', $this -> title, PDO::PARAM_STR); $prepare -> bindValue(':date_publicate', $this->date_publicate, PDO::PARAM_STR); $prepare -> bindValue(':article_content', $this -> content, PDO::PARAM_STR); $prepare -> bindValue(':autor', $this->autor, PDO::PARAM_STR); //$prepare->bindValue(':autor', $this->autor, PDO_PARAM_STR); $prepare -> execute(); $prepare->closeCursor(); } public function setAutor($login) { $this -> autor = $login; } public function setDate() { } }
Proszę o sugestie, pewnie ten kod w ogóle nie jest "składni" i poprawny obiektowo. Obiektu tej klasy będę używał przy dodawaniu, edycji, usuwania, wyświetlania artykułu. Klasa nie jest jeszcze skończona.