Bonjour,
Je rencontre un problème avec une procédure mysql et php V 5.2.6, que je n'arrive pas à résoudre.
Avec php v 5.2.0, je n'ai pas ce problème.
Avec php v 5.2.6, la procédure s'exécute normalement et j'obtiens les résultats escomptés.
Par contre, si j'effectue une requête suivante telle que query,
j'obtiens avec MySQLi le message:
<Error: 2014 => Commands out of sync; you can't run this command now>
j'obtiens avec PDO le message: (PDO::MYSQL_ATTR_USE_BUFFERED_QUERY est bien TRUE)
<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>

Par contre, si je remplace l'utilisation de ma procédure par une requête
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
        SELECT code_postal , commune  
         from codes_postaux_france 
         WHERE  code_postal LIKE p1 
         ORDER BY code_postal, commune;
Tout se déroule normalement et je peux effectuer une reqête suivante telle que 'query'!

listing de ma procédure:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
   DROP PROCEDURE IF EXISTS get_commune//
    CREATE PROCEDURE get_commune (IN p1 varchar(5))
       BEGIN
         SELECT code_postal , commune  
         from codes_postaux_france 
         WHERE  code_postal LIKE p1 ORDER BY code_postal, commune;
       END//
Si vous pouviez m'apporter vos lumières? Pierre Laur