Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 27-02-2008 23:35:14

Lio
Membre
Date d'inscription: 21-01-2008
Messages: 41

Erreur avec PDO ?

Bonjour,

Voilà, j'ai codé un script qui fonctionne bien en local. Je l'ai donc balancé sur le serveur, et j'ai une erreur plutôt .. étrange. J'espère que vous saurez m'aider smile

SQLSTATE[HY000]: General error: 2014 Cannot execute queries while other unbuffered queries are active. Consider using PDOStatement::fetchAll(). Alternatively, if your code is only ever going to run against mysql, you may enable query buffering by setting the PDO::MYSQL_ATTR_USE_BUFFERED_QUERY attribute.

PDO et PDO-MySQl sont installés et activés.

Cordialement,

Dernière modification par Lio (27-02-2008 23:35:45)

Hors ligne

 

#2 28-02-2008 09:18:42

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: Erreur avec PDO ?

J'ai eu cette erreur récemment.
C'est un truc bête. Il m'est arriver ça lorsque je faisais une boucle en utilisant les mêmes variables sans les "vidés" proprement. C'est pas trop dur à traduire:  Cannot execute queries while other unbuffered queries are active -> Impossible d'exécuter des requetes lorsque d'autres toujours pas "traitées" (i.e. sorti du tampon) sont actives ( en mémoire).
Sinon t'as l'astuce en dessous: you may enable query buffering by setting the PDO::MYSQL_ATTR_USE_BUFFERED_QUERY attribute. A voir comment faut faire.

Hors ligne

 

#3 28-02-2008 12:12:38

Lio
Membre
Date d'inscription: 21-01-2008
Messages: 41

Re: Erreur avec PDO ?

Justement, je ne sais pas comment faire smile
Et j'avais relativement bien compris le message d'erreur, sauf qu'il ne te localise pas l'erreur sad

Hors ligne

 

#4 28-02-2008 12:23:44

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: Erreur avec PDO ?

Ca peut peut-être t'aider: http://php.benscom.com/manual/fr/ref.pdo-mysql.php ?
Perso en modifiant mon code le soucis a disparu mais je ne sais plus trop comment j'ai fais :s

Hors ligne

 

#5 28-02-2008 12:25:20

Lio
Membre
Date d'inscription: 21-01-2008
Messages: 41

Re: Erreur avec PDO ?

Et appliquer les nouvelles constantes via ZF .. ?

Hors ligne

 

#6 28-02-2008 14:38:34

Julien
Membre
Date d'inscription: 16-03-2007
Messages: 501

Re: Erreur avec PDO ?

Et un
$pdo->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY,true);
ne résoud pas le problème ??

Hors ligne

 

#7 28-02-2008 15:24:09

Lio
Membre
Date d'inscription: 21-01-2008
Messages: 41

Re: Erreur avec PDO ?

J'le fait où et A quel moment surtout smile

Hors ligne

 

#8 29-02-2008 10:25:43

Julien
Membre
Date d'inscription: 16-03-2007
Messages: 501

Re: Erreur avec PDO ?

Et bien dès la création de la connexion.
Tu dois utiliser une branche 5.1 de PHP non?

Hors ligne

 

#9 29-02-2008 14:46:02

Lio
Membre
Date d'inscription: 21-01-2008
Messages: 41

Re: Erreur avec PDO ?

En effet, oui.
Mais la connexion je l'ouvre avec Zend_Db en lui passant mon fichier de config .ini. J'vois donc pas bien comment j'dois dire à Zend_Db d'activer cette constante.

Hors ligne

 

#10 29-02-2008 20:30:14

Julien
Membre
Date d'inscription: 16-03-2007
Messages: 501

Re: Erreur avec PDO ?

et bien ......
$db->getConnection()->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY,true);

avec $db correspondant à un objet Zend_Db_Adapter_Pdo_Mysql.

Hors ligne

 

#11 01-03-2008 16:03:30

Jean-Marc Rigade
Membre
Lieu: Rennes
Date d'inscription: 25-09-2007
Messages: 314

Re: Erreur avec PDO ?

Lio a écrit:

En effet, oui.
Mais la connexion je l'ouvre avec Zend_Db en lui passant mon fichier de config .ini. J'vois donc pas bien comment j'dois dire à Zend_Db d'activer cette constante.

C'est en effet une recette pour éviter le message d'erreur, mais ça ne va que masquer un problème réel dans la logique applicative qui devrait plutôt être traité.
Essaye de créer une log pour localiser la source du problème...

JMR

Hors ligne

 

#12 02-03-2008 19:33:47

Lio
Membre
Date d'inscription: 21-01-2008
Messages: 41

Re: Erreur avec PDO ?

Merci Julien.

Jean-Marc, je me doute que c'est pour flouter l'affaire, mais je ne sais pas du tout ce qui ne va pas smile

Hors ligne

 

#13 07-02-2010 14:45:39

soubsoub
Nouveau membre
Date d'inscription: 07-02-2010
Messages: 1

Re: Erreur avec PDO ?

Dans le config.ini :

resources.db.params.driver_options[PDO::MYSQL_ATTR_USE_BUFFERED_QUERY] = true

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages