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 :
Pardon pour cette indentation, j'ai pas réussi à en faire une.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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); }}
Et mon code pour un INSERT TO :
J'ai comme erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 ));
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...
Partager