IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Pb avec requête PDO


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 8
    Par défaut Pb avec requête PDO
    Bonjour,
    Je rencontre un soucis avec une requête PDO :
    j'ai une fonction qui execute une requête et dans la boucle de résultat j'ai une autre requête.
    La première requête fonctionne, mais pas la deuxième j'ai une erreur "Call to a member function bindParam() on a non-object"
    Quelqu'un peut-il m'aider ?

    Merci
    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
     
    function supprFichierCron(){
    	global $dbh;
    	$datej = date("Y-m-d H:i:s");
    	$Rq = "SELECT FICID, FICREPERTOIRE FROM ".FICHIERS_TBL.
    		" WHERE FICPEREMPTION<'".$datej."' AND FICSUPPRESSION='0000-00-00 00:00:00'";
     
    	$stmt = $dbh->prepare($Rq);
    	$stmt->execute();
    	while($arr = $stmt->fetch(PDO::FETCH_ASSOC)){	
    		$ficrepertoire = $arr['FICREPERTOIRE'];
    		$Rq = "SELECT FICID,SCRID FROM ".FICHIERS_TBL." WHERE FICREPERTOIRE = :ficrepertoire";
    		$stmt = $dbh->prepare($Rq); 
    		$stmt->bindParam(':ficrepertoire', $ficrepertoire);
    		$stmt->execute();
    		while($arr = $stmt->fetch(PDO::FETCH_ASSOC)){
    			$ficid = $arr['FICID'];
    			$scrid = $arr['SCRID'];
    		}
    	}
     
    }

  2. #2
    Membre Expert
    Avatar de Eusebe
    Inscrit en
    Mars 2006
    Messages
    1 992
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 992
    Par défaut
    Bonjour,

    Pour commencer, ça doit un peu gêner de réinitialiser $stmt dans la boucle qui utilise... $stmt !

    La première chose à faire est donc de créer des noms de variables différents pour tes deux requêtes. Ensuite, vérifies que $dbh->prepare($Rq); renvoie bien un objet et pas FALSE (échec de préparation de la requête). Essaie alors d'utiliser les méthodes errorCode() et errorInfo() pour en connaître la raison...

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 5
    Par défaut
    Bonjour,

    je ne voudrais pas dire de bêtise mais il faut pas déclarer le type de donnée dans bindParam.

    exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    /* Exécution d'une requête préparée en liant des variables PHP */
    $calories = 150;
    $couleur = 'rouge';
    $sth = $dbh->prepare('SELECT nom, couleur, calories    FROM fruit    WHERE calories < :calories AND couleur = :couleur');
    $sth->bindParam(':calories', $calories, PDO::PARAM_INT);$sth->bindParam(':couleur', $couleur, PDO::PARAM_STR, 12);
    $sth->execute();
    ?>
    Regardes sur http://php.net/pdostatement.bindparam

    J'espère que cela t'aidera

Discussions similaires

  1. [PDO] Requête PDO avec condition variable
    Par int85 dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 15/04/2015, 16h45
  2. [PHP 5.3] Faire une classe avec une requête PDO
    Par dancom5 dans le forum Langage
    Réponses: 15
    Dernier message: 19/03/2014, 05h44
  3. Try catch avec requêtes pdo
    Par Invité dans le forum Langage
    Réponses: 3
    Dernier message: 12/03/2014, 22h41
  4. [TinyMCE] Requête préparée pdo
    Par Invité dans le forum Bibliothèques & Frameworks
    Réponses: 4
    Dernier message: 12/03/2014, 20h29
  5. [PDO] deux résultats avec une requête pdo
    Par dancom5 dans le forum PHP & Base de données
    Réponses: 14
    Dernier message: 30/05/2013, 15h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo