Chciałbym Wam zaprezentować 3 "szablony" klas, klasę kategorii, artykułu i pseudo-obsługi bazy danych. Te klasy nie są całkowicie gotowe ( ich funkcjonalność), ale daję je pod Wasze profesjonalne oko, żebyście już na początku mogli mnie pokierować na bardziej poprawne tory


Z góry dzięki za każdą wypowiedź.
Pozdrawiam!

<?php class Database { public $host = "localhost"; public $dbname = "articles"; public $user = "root"; public $pass = "vertrigo"; public $dbh; function connect(){ try { $this->dbh = new PDO("mysql:host=$this->host; dbname=$this->dbname", $this->user, $this->pass); } function set_coding($what) { $this->dbh->exec("SET NAMES ".$what); } } class Taskplain{ public $content; public $solution; public $nr_original; public $id_autor; public $id_kategoria; public $points; public $id_date; public $link; function __construct($content, $id_autor, $id_kategoria,$id_date,$link ){ $this->content = $content; $this->id_autor = $id_autor; $this->id_kategoria = $id_kategoria; $this->id_date = $id_date; $this->link = $link; } function add($dbh) { $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "INSERT INTO task_e( content, id_autor, id_kategoria, link) VALUES (:content, :id_autor, :id_kategoria, :link)"; try { $q = $dbh->prepare($sql); } } try { :id_autor'=>$this->id_autor, ':id_kategoria'=>$this->id_kategoria, :link'=>$this->link)); } catch(PDOException $e) { } } } class Category{ public $id; public $name; function addCategory($name, $dbh){ $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "INSERT INTO category( name) VALUES (:name)"; $q = $dbh->prepare($sql); try { } catch(PDOException $e) { } } function __construct($name) { $this->name = $name; } function getCateogory($dbh){ // ta klasa miałaby mi tworzyć tablice ze wszystkimi kategoriami $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $q = $dbh->prepare("SELECT * FROM autor"); try{$q->execute();} while ($row = $q->fetch(PDO::FETCH_ASSOC)) { array_push($this->names, $row['name']); // tu chciałbym zastosować lepszy pomysł, zamiast tego while użyć fetch.... z PDO } } } ?>