Fatal error: Uncaught Error: Call to a member function prepare() on null in
Bonjour je n'arrive pas à me connecter à ma BDD je ne comprend pas trop pourquoi voici mon code et l'endroit ou je l'appelle.
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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
<?php
// class ConnectionBase{
// protected $bdd;
// public function __construct(){
// $this->bdd = new PDO('mysql:host=localhost;dbname=pieces_leader;port=3308', 'root', '');
// }
// public function getBdd()
// {
// return $this ->bdd;
// }
// }
/* Connexion à une base MySQL avec l'invocation de pilote */
class ConnectionBase{
protected $bdd;
public function __construct()
{
$dsn = 'mysql:dbname=pieces_leader;host=localhost;port=3308';
$user = 'root';
$password = '';
try
{
$bdd = new PDO($dsn, $user, $password);
$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
}
catch (PDOException $e)
{
echo 'Connexion échouée : ' . $e->getMessage();
}
finally
{
$bdd = null;
}
}
public function getBdd()
{
return $this ->bdd;
}
}
?> |
et je l'appelle ICI
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
|
<?php
require_once '../App/Services/ConnectionBase.php';
require_once '../App/Model/Product_Model.php';
class ProductServices extends ConnectionBase
{
public function GetProduct(int $terme)
{
//recupere la connection venant de ConnectionBase
$connect = parent::getBdd();
//dump($connect);
$sql="SELECT * FROM `prix`WHERE `Reference` LIKE :ref";
$consult = $connect->prepare($sql); // Prépare la requête SQL en utilisant la BDD
$terme = ($terme."%"); // Crée une variable terme qui étend le résultat aux autres concordance
$consult -> bindValue(':ref' , $terme, PDO::PARAM_INT); // :ref devient $terme
$consult -> execute(); // $consult reçois le résultat de la requête
if($sql === false){
echo "\nPDO::errorCode(): ", $connect->errorCode();
}
?> |