Probléme avec PDO

Résolu
dhbmedanis Messages postés 10 Date d'inscription mardi 9 février 2010 Statut Membre Dernière intervention 3 juillet 2011 - 8 mai 2011 à 11:00
dhbmedanis Messages postés 10 Date d'inscription mardi 9 février 2010 Statut Membre Dernière intervention 3 juillet 2011 - 10 mai 2011 à 09:41
je suis en train de réaliser une application web en PHP5
je suis débutant en php orienté objet et aussi débutant avec l'utilisation de PDO
voilà mon problème:
j'ai une classe qui contient une méthode qui sert à ajouter un utilisateur :
class Utilisateur
{
public $idUtil='';
public $loginUtil;
public $mpassUtil;
public $nomUtil;
public $prenomUtil;
public $posteUtil;
public $serviceUtil;
public $privUtil=True;
public $db; // Instance de PDO

public function __construct($db)
{
$this->db = $db;
}
public function ajouter()
{
$req=$db->prepare('INSERT INTO utilisateurs(idUtil,loginUtil,mpassUtil,nomUtil,prenomUtil,posteUtil,serviceUtil,privUtil)
VALUES (:loginUtil,:mpassUtil,:nomUtil,:prenomUtil,:posteUtil,:serviceUtil,:privUtil)');
$req->execute(array(
'idUtil' => '',
'loginUtil' => $_POST['loginUtil'],
'mpassUtil' => $_POST['mpassUtil'],
'nomUtil' => $_POST['nom'],
'posteUtil' => $_POST['poste'],
'serviceUtil' => $_POST['service']));
}
}
?>
je met dans la page qui contient la formulaire :
$PARAM_hote='localhost'; // le chemin vers le serveur
$PARAM_port='3306';
$PARAM_nom_bd='fournibd'; // le nom de votre base de données
$PARAM_utilisateur='root'; // nom d'utilisateur pour se connecter
$PARAM_mot_passe=''; // mot de passe de l'utilisateur pour se connecter
function chargerClasse($classname)
{
require $classname.'.class.php';
}

spl_autoload_register('chargerClasse');
//instance de PDO

// On émet une alerte à chaque fois qu'une requête a échoué

if(isset($_POST['ajouter']))
{
try
{
$db = new PDO('mysql:host='.$PARAM_hote.';dbname='.$PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe,array(PDO::ATTR_PERSISTENT => true));
}
catch(Exception $e)
{
echo 'Une erreur est survenue !';
die();
}
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
$util = new Utilisateur($db);
$util->ajouter();
}
?>

et il m'affiche
Fatal error: Call to a member function prepare() on a non-object in C:\wamp\www\essai1\PDO\Utilisateur.class.php on line 20

SVP aidez moi

2 réponses

phpAnonyme Messages postés 392 Date d'inscription mercredi 28 octobre 2009 Statut Membre Dernière intervention 23 mars 2012 55
9 mai 2011 à 20:09
public function ajouter()
{
$req=$this->db->prepare('INSERT



______________________________________________________________________
3
dhbmedanis Messages postés 10 Date d'inscription mardi 9 février 2010 Statut Membre Dernière intervention 3 juillet 2011
10 mai 2011 à 09:41
merci c'est résolu :)
0
Rejoignez-nous