Call to undefined method DB::prepare()
Salut tout le monde,
Je suis en train de faire un site avec des utilisateurs qui peuvent s'inscrire.
J'utilise PDO et ma connexion est dans une classe DB.
Voici les codes :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| <?php
class DB{
private $host = 'localhost';
private $username = 'root';
private $password = '';
private $database = 'projet';
private $bdd;
public function __construct($host = null, $username = null, $password = null, $database = null){
if($host != null){
$this->host = $host;
$this->username = $username;
$this->password = $password;
$this->database = $database;
}
try{
$this->bdd = new PDO('mysql:host='.$this->host.';dbname='.$this->database, $this->username, $this->password, array(
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8', PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING));
}
catch(PDOException $e){ die('impossible de se co à la bd'); }
}
public function query($sql, $data = array()){
$req =$this->bdd->prepare($sql);
$req->execute($data);
return $req->fetchAll(PDO::FETCH_OBJ);
}} |
Pardon pour cette indentation, j'ai pas réussi à en faire une.
Et mon code pour un INSERT TO :
Code:
1 2 3 4 5 6 7 8 9 10 11
| $test = $DB->prepare('INSERT INTO personne(NomPersonne, PrenomPersonne, TelPersonne, MDPPersonne, EmailPersonne, AdresseClient, VilleClient) VALUES(:NomPersonne, :PrenomPersonne, :TelPersonne, :MDPPersonne, :EmailPersonne, :AdresseClient, :VilleClient)');
$success = $test->execute(array(
'NomPersonne'=> $var_nom,
'PrenomPersonne'=>$var_prenom,
'TelPersonne'=>$var_tel,
'MDPPersonne'=>$var_mdp,
'EmailPersonne'=>$var_email,
'AdresseClient'=>$var_adresse,
'VilleClient'=>$var_ville
)); |
J'ai comme erreur :
Fatal error: Call to undefined method DB::prepare() in C:\Program Files (x86)\EasyPHP-12.1\www\pizzaalex\formulaireinscription.inc.php on line 113
Cette ligne correspond au code du INSERT INTO.
Merci de votre aide, je désespère...