无法从对象的方法插入到DB中

时间:2016-03-29 17:18:29

标签: php oop pdo insert

我试图摆脱程序并切换到几乎完整的OOP。 我已经制作了一个抽象的课程' Vehicle',并实例化了一个扩展的课程' Car'。

我编写了一个insert()方法,该方法在我的数据库中插入数据: 我不能让它发挥作用!

这里是抽象类:

    <?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();
    }


}

1 个答案:

答案 0 :(得分:-1)

尝试:

  

$ bdd-&gt;准备(&#34; INSERT INTO vehicle(immatriculation,id_a)VALUES(&#39;&#34;。$ this-&gt; imma。&#34;&#39;,& #39;&#34; $ IDA&#34;&#39;);&#34;) - &GT;执行();

如果不起作用,请告诉我你得到的错误。