Depuis PHP, vous ne regardez que le PREMIER jeu de résultats. À partir de la ligne de commande, il crache simplement tous les ensembles de résultats.
Chaque appel de procédure stocké que vous avez ci-dessus génère un nouvel ensemble de résultats unique (différents champs possibles, etc.)
Pour résoudre ce problème, vous pouvez passer au jeu de résultats suivant, s'il existe :
Utilisez odbc_next_result ( resource $result_id )
Alternativement, en utilisant Mysqli, vous pouvez utiliser ces trois commandes :
$result =$connection->multi_query("select * from foo....");$result =$connection->store_result();$connection->next_result();
En utilisant votre code comme exemple, vous pouvez envelopper votre code qui produit des résultats dans une boucle do..while comme ceci :
$result= $mysqli->multi_query("SELECT first_id,second_id from pair_find");
do {
$result = $mysqli->store_result();
while($row = mysqli_fetch_array($result, MYSQLI_ASSOC))
{
print_r($row);
}
} while ($mysqli->next_result());
http://php.net/manual/en/function.odbc -next-result.php
http://php.net/manual/en/mysqli.next-result .php