Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PDO
PDO Forum d'entraide sur PDO (PHP Data Objects) : pilote générique de bases de données avec PHP. Avant de poster -> FAQ PDO et Cours PDO
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/09/2008, 19h40   #1
Membre régulier
 
Inscription : octobre 2007
Messages : 199
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 199
Points : 77
Points : 77
Par défaut Procédures stockées bug 38858

Bonjour,
Je développe une appli avec PHP/MySQL via PDO.
J'utilise le procédures stockées.
Tout est ok tant que le code n'appelle pas consécutivement deux procédures stockées. Dans le cas contraire l'erreur 2014 est générée :
"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"

Après des heures de recherches j'ai appris qu'il s'agit du bug : #39759

Hélas, je n'ai trouvé aucun tourne autour... sauf une dll à télécharger mais je ne sais où l'instaleer : http://www.nolimitclubbing.com/lib_p..._pdo_mysql.dll .

J'ai réellement besoin d'aide...
Merci à tous

Jean-Louis
JLC83 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/09/2008, 19h52   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 383
Points : 16 383
Bonjour,

Je rencontrais des erreurs aléatoires sur PDO avec PHP 5.1 et ca a disparu en utilisant les attributs de connexion suivants :
Code :
1
2
3
4
$c01 = new PDO('mysql:host='.$var01.';dbname='.$var04, $var02, $var03);
	$c01->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
	$c01->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, true);
	$c01->setAttribute(PDO::ATTR_EMULATE_PREPARES, true);
Pour ce que j'en avais lu a l'epoque c'etait corrigé en PHP 5.2
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/09/2008, 08h57   #3
Membre régulier
 
Inscription : octobre 2007
Messages : 199
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 199
Points : 77
Points : 77
Bonjour,
Merci de la réponse :
Je vais essayer : $c01->setAttribute(PDO::ATTR_EMULATE_PREPARES, true)
Le reste y était bien.
Pour la version PHP j'ai la dernière de wamp5...
Je pioche ça cet après-midi.
Si !ok je complète.
JL
JLC83 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/09/2008, 15h47   #4
Membre régulier
 
Inscription : octobre 2007
Messages : 199
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 199
Points : 77
Points : 77
Hélas, même après les modifications, rien n'y fait
Chaque appel à une procédure stockée fonctionne individuellement fort bien.
D'ailleurs lorsque je met en commentaire tantôt un appel, tantôt l'autre tout fonctionne.
C'est quand les deux se suivent que le message d'erreur réapparaît.
Le PHP5 est bien un 5.2 build 3790.
JLC83 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/09/2008, 10h31   #5
Membre régulier
 
Inscription : octobre 2007
Messages : 199
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 199
Points : 77
Points : 77
Bonjour,
J'ai réinstallé le PHP, puis j'ai repris les lignes de code si gentiment communiquée et :
MERCI !!!!
JLC83 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h38.


 
 
 
 
Partenaires

Hébergement Web