Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1953 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Accès aux résultats d'une procédure stockée avec curseur

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Accès aux résultats d'une procédure stockée avec curseur

n°2273421
Krismu
Posté le 14-01-2016 à 16:22:58  profilanswer
 

Bonjour,
 
Je bloque sur un soucis d'accès aux données retournées par une procédure stockée (qui va retourner plusieurs "select" ) contenant un curseur, sachant que l'appel se fait via un prepared statement ...
 
Le code suivant:

Code :
  1. $stmt = $db->prepare($query);
  2. $x = 125; $y = 1;
  3. $stmt->bind_param("ii", $x, $y);
  4. $stmt->execute();
  5. do {
  6.     if ($res = $stmt->get_result()) {
  7.         echo "---";
  8.         var_dump($res->fetch_all());
  9.         mysqli_free_result($res);
  10.     }
  11. } while ($stmt->more_results() && $stmt->next_result());


Marche si la procédure n'utilise pas de curseur, et bloque (la page ne s'affiche pas et reste en chargement infiniment...) si la procédure utilise un curseur.
A noter que si les opérations sur le curseur sont après le dernier "select", il n'y a plus de problème ...  
 
Et le code suivant:

Code :
  1. $stmt = $db->multi_query($query);
  2. do
  3. {
  4.     if ($result = $db->store_result()) {
  5.         while ($row = $result->fetch_row()) {
  6.             var_dump($row);
  7.         }
  8.         $result->free();
  9.     }
  10.     if ($db->more_results()) {
  11.         echo "-----------------" );
  12.     }
  13. }
  14. while ($db->more_results() && $db->next_result());


 
Marche dans tous les cas (mais ne me permet pas d'utiliser un prepared statement).
 
Je n'utilise pas beaucoup ces trucs là dernièrement, je me demande si ce n'est pas une restriction "évidente" mais je n'arrive pas à mettre le doigt dessus.
 
Merci

mood
Publicité
Posté le 14-01-2016 à 16:22:58  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Accès aux résultats d'une procédure stockée avec curseur

 

Sujets relatifs
Ecrire totalité des resultats d'un programme dans un fichier en CFonction et procedure
Appel concurent de procedure stocké oracle dans mon programme javaerreur code php pour accès localhost
[MVVM] Traitements/Accès réseaux depuis le "Model" ?acces ftb en visual basic
[IIS] Accès page web par http://adresse_ip[Mysql] Pertinence des résultats avec MATCH / AGAINST
PDO et procédure stockée SQL Server 
Plus de sujets relatifs à : Accès aux résultats d'une procédure stockée avec curseur


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR