[RESOLU] PDO:problem avec prepare function

Eléphanteau du PHP | 20 Messages

15 mai 2016, 22:30

j'ai recu ce problem :
Fatal error: Call to a member function prepare() on null in C:\xampp\htdocs\w\jquery\insertJquery\classo.php on line 31

page classo.php
<?php 

        class classo
        {
        	function connection(){
        		$db=new pdo ('mysql:host=localhost;dbname=pronostic','root','');
        		$db->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);
                            
        	}

        	function insererDonne($pseudo,$password)
        	{      
                        global $db;
                        classo::connection();     
        		$donne=array(
        			'user' =>$pseudo,
        			'pass' =>$password 
        			);

        		$req="INSERT INTO users (user,pass) VALUES (:user,:pass)";
        		$sql=$db->prepare($req);
        		$sql->execute($donne);

        	}
        }

 ?>

page index.php
<?php 

require('classo.php');
$data=new classo();
$data->insererDonne('Jean','123456');
 ?>

Mammouth du PHP | 2703 Messages

15 mai 2016, 22:58

$db n'existe pas, donc vaux null.
renommer la fonction connection en classo, puis remplacer $db par $this->db et enlever
global $db;
classo::connection();