Wpis z mikrobloga

Mirki specjaliści od #php mam obiekt klasy pies:

class Pies
{
private $imie;
private $rasa;
private $wiek;

function __costructor($imie, $rasa, $wiek){
$this->imie = $imie;
$this->rasa = $rasa;
$this->wiek = $wiek;
}

public function dodajPsaDoBazy(){

// jakis kod

}

}

$pies = new Pies('Azor', 'Kudel', 3);

Baza mysql, sklada sie oczywiscie z id, imie, rasa, wiek. Może mi ktoś na tym prostym przykładnie wytłumaczyć w jaki sposób poprawnie korzystać z pdo? czy może jest jakiś lepszy (poprawniejszy) sposób dodawania obiektów do bazy danych

#php #programownie #mysql #naukaprogramowania
  • 11
@krab58: Do metody przekaż wskaźnik do obiektu zarządzającego bazą (np. $db), wewnątrz metody przygotuj statement (wrzuć dane z $this), a następnie wykonaj rozkaz 66 ($db->costam( costam )).
@januzi: Dostęp do bazy w modelu? Serio?
Warstwa domenowa nie powinna wiedzieć nic o strukturze aplikacji/infrastrukturze, no i podręcznikowo łamiemy SOLID.

@Damian1998: Przecież nie chodzi o wykonanie zapytania, tylko o koncepcję obsługi modelu przez bazę.
W tym przypadku możemy pokazać koledze jak napisać prostą abstrakcję nad PDO/DBALem, ogarnąć podstawy architektury i implementacji repozytoriów.
Samo rzucenie hasła "ORM" niewiele mu powie, mocno zaciemni podstawy i być może namiesza w głowie.
Postawa
rasista jeden... rasa nie ma znaczenia...


@GotoFinal: Źle to rozumujesz, mireczku. Rasa jest zła jeśli ma wartość białą. Za to jest powodem do dumy jeśli jest inna, kolorowa. ergo: pole powinno przyjmować tylko wartości ras kolorowych i mieszanych. Można to zrobić za pomocą enuma kontrolowanego politycznie albo triggerem niczym dyrektywami KE korygować stan.