Fatal error PHP

nobie-cs Messages postés 157 Statut Membre -  
nobie-cs Messages postés 157 Statut Membre -
mon serveur m'affiche se message "
Fatal error: Call to a member function execute() on a non-object in C:\www\final-project\common.php on line 47"

mon code :
// Make the connection: 
$db = @mysqli_connect (DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); 
... 
.... 
... 
$sql = 'SELECT Id, Nom, Repertoire 
            FROM gabarits 
            WHERE Id = :id_gabarit'; 

    $statement = $db->prepare($sql);   
    $statement->execute(array(':id_gabarit' => $desired_template_id)); /*ICI c'est la line 74*/ 


je suis un debutant , c'est pas mon script je l'ai trouver sur le net .
merci en avance :)

3 réponses

  1. a70m Messages postés 3121 Statut Contributeur 217
     
    Salut,

    Tu n'es pas connecté à ta base de donnée en même temps ...
    Première ligne, DB_HOST, DB_USER, DB_PASSWORD, DB_NAME, il faut que tu remplaces ça par tes identifiants pour te connecter à ta BDD.

    Etant débutant, ça ne te sert absolument à rien de copier/coller des scripts du net.

    Apprends le PHP toi-même et fait tes scripts toi-même, ou tout du moins, apprends au moins à les comprendre pour pouvoir les adapter tout seul à ton site.

    Cordialement
    0
  2. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    « Première ligne, DB_HOST, DB_USER, DB_PASSWORD, DB_NAME, il faut que tu remplaces ça par tes identifiants pour te connecter à ta BDD. »
    Ça peut être des constantes ...

    Tu te connectes à MySQL via mysqli_connect. $nb est donc un lien vers ta connexion, lien que tu peux préciser dans d'autres fonctions commençant par "mysqli_", ce n'est pas un objet. La, tu mélanges du PDO avec du MySQLi.
    0
  3. nobie-cs Messages postés 157 Statut Membre 17
     
    Merci pou les réponse , j'ai changer le script mais mnt j'ai une autre erreur

    Class 'PDO' not found


    code
    define('USER1', 'utilisateur');
    define('PASS1', 'mdp');
    define('DSN1', 'mysql:host=host;dbname=nomdb');
    $db = new PDO(DSN1, USER1, PASS1);
    

    j'ai déjà modifier le fichier php.ini

    Cordialement
    0