chce napisac klase do oblugi uzytkownikow, natrafilem takze w sieci na ciekawy artykul na temat interfejsu baz danych PDO
chcialbym sie dowiedziec czy dobrze sie do tego zabieram. dzialanie klasy bedzie takie ze tworzymy obiekt klasy pochodnej, w argumencie jest obiekt klasy PDO i id uzytkownika. pobieramy jakies informacje uzytkownika, czy w innej klasie pochodniej je zapisujemy itp.
czy PDO nie bedzie tu kolidowac? tam trzeba troche bardziej kombinowac z zapytaniami, bo np. nie mozna wykonywac nowego dopoki sie starego nie zamknie. chyba ze dla klasy uzytkownik drugi obiekt PDO przekazac ? prosze o rady i informacje czy moje rozwiazanie jest ok.
<?php //przykladowe wywolanie $uz=new UzytkownikInfo($pdo,15); $uz_nazwa=$uz->pokazUzNazwa(); //xzaczatek klasy //////////// Postawowa klasa abstrakcyjna dla obslugi uzytkownika, wczytujaca dane uzytkowni
ka z bazy danych abstract class Uzytkownik { protected $uz_id; function __construct(PDO $pdo,$uz_id) { $this->uz_id=$uz_id; $query="SELECT * FROM uzytkownik"; $wynik=$pdo->query($query); $this->row_uz=$wynik->fetch(PDO::FETCH_ASSOC); $wynik->closeCursor(); } } /////////// Klasa sluzaca do wyswietlania informacji o uzytkowniku /////////// stworzenie przykladowego obiektu: $uz=new UzytkownikInfo($pdo,$uz_id); /////////// $pdo : obiekt klasy PDO (interfejsu do baz danych z php5) /////////// $uz_id : id uzytkownika class UzytkownikInfo extends Uzytkownik{ function __construct(PDO $pdo,$uz_id) { parent::__construct($pdo,$uz_id); } //////// funkcja zwraca nazwe uzytkownika ale pokazuje tylko tyle na ile pozwolil w prof
ilu public function pokazUzNazwa() { if($this->row_uz['uz_nazwa_pokaz']==UZ_NAZWA_POKAZ_IMIE_NAZWISKO_NICK) { return $this->row_uz['uz_imie'].' '.$this->row_uz['uz_nazwisko']." '".$this->row_uz['uz_nick']."'"; } else if($this->row_uz['uz_nazwa_pokaz']==UZ_NAZWA_POKAZ_NICK) { return $this->row_uz['uz_nick']; } } } ?>