I try to get rid of procedural and switch to almost full OOP. I've made an abstract class 'Vehicle', and instantiated an extended one 'Car'.
I've written an insert() method which insert datas in my database : I can't make it work !
here's the abstract class :
<?php
abstract class Vehicle
{
private $id;
private $marque;
private $model;
private $imma;
protected function __construct($ma, $mo, $im)
{
$this->marque = $ma;
$this->model = $mo;
$this->imma = $im;
}
public function setMarque($ma)
{
$this->marque = $ma;
}
public function setModel($mo)
{
$this->model = $mo;
}
public function setImma($im)
{
$this->imma = $im;
}
public function getId()
{
return $this->id;
}
public function getMarque()
{
return $this->marque;
}
public function getModel()
{
return $this->model;
}
public function getImma()
{
return $this->imma;
}
public function insert(PDO $bdd, $idA)
{
try{
$bdd->prepare('INSERT INTO vehicle (immatriculation, id_a)
VALUES ("'.$this->imma.'",'.$idA.')')->execute();
}
catch(Exception $e) {
echo '<script>alert("An error has occured, try again...");</script>';
return;
}
$this->id =
$bdd->prepare('SELECT id_vehicle FROM vehicle
WHERE immatriculation="'.$this->imma.'"')->execute();
}
}