Bonjour,
J'ai trouvé plusieurs morceaux de codes sur le forum qui m'ont permis d'arriver à faire ce que je souhaite, c'est a dire récupérer plusieurs enregistrements renvoyés par une procédure stockée sous mysql.
La procédure stockée
call sp_getMillesimes('$dept_num','$millesime')
me renvoit des années : 2006,2007,2008
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
// UTILISATION MySqlI
$dbO = new mysqli($host , $user, $pass , $bdd);
// Envoi de requêtes imbriquées
$Query = "call sp_getMillesimes('$dept_num','$millesime')" ;
$Results = $dbO -> query( $Query );
// Affichage des résultats
while($val = $Results -> fetch_assoc())
{
$temp_millesime=$val['mill'];
echo "<option value=\"$temp_millesime\">$temp_millesime</option>\n";
}
// Fermeture de la connexion
$dbO -> close(); |
Mon problème c'est que je ne souhaite pas particulièrement utiliser mysqli puisque cette procédure stockées sera l'une des seules a renvoyer plusieurs résultats.
Sur ce même forum j'ai trouvé un post où une personne montre du code pour réaliser la même chose avec mysql.
J'ai repris et modifié ce code cela donne ceci :
1 2 3 4 5 6 7 8 9 10 11 12 13
|
$dept_num='033';
$mill='2008';
//Connexion à la base de données
connexion_db();
//Exécution de la procédure stockée
$resultat = mysql_query("call sp_getMillesimes('$dept_num','$mill')");
//Lecture du recordset de résultat
while ($resultat && $ligne = mysql_fetch_array($resultat)){
echo $ligne['mill'];
}
//Ferméture
deconnexion_db(); |
L'erreur renvoyée est la suivante : Erreur SQL : PROCEDURE sp_getMillesimes can't return a result set in the given context
SQL string : call sp_getMillesimes('033','2008')
Merci d'avance.
Nico.
Je
Partager