1

私のストアド プロシージャには、'@var' という out パラメータがあり、これは整数値になります。ストアド プロシージャを実行できますが、後で out パラメータの値を取得できません。

この問題は、mysql から mysqli に変更したときに発生しました。

mysql接続を使用していたとき、コードは正常に機能していました。コードは次のとおりです

    $query = "CALL myStoredProcedure('$LocationIdToEdit',@var)";           
    $result = mysql_query($query);
    $result = mysql_query("SELECT @var;");

    $row = mysql_fetch_row($result);
    $myVar = $row[0];

以下に示すように、mysqlをmysqliに変更しました

    $query = "CALL myStoredProcedure('$LocationIdToEdit',@var)";           
    $result = mysqli_query($conn, $query);
    $result2 = mysqli_query($conn,"SELECT @var;");

    $row = mysqli_fetch_row($result2);
    $myVar = $row[0];

現在、$row 値は null ですが、クエリ ブラウザで同じコードを実行すると、正常に動作しますが、php 内では動作しません.....

    $result2 = mysqli_query($conn,"SELECT @var;");
    $row = mysqli_fetch_row($result2);

これはヌル値を返しています。

誰か助けてください。

4

1 に答える 1