私は AMFPHP + codeigniter + flash に取り組んできましたが、すべて正常に動作していましたが、ストアド プロシージャを作成したときに問題が発生しました。AMF ブラウザーから複数の結果セットを使用してストアド プロシージャを呼び出すことができましたが、関数がフラッシュ自体から呼び出されるたびに、Bad Version error
.
以下は、使用している複数の結果セットをトラバースするライブラリ {CI フォーラムからの} です。
class Mydb
{
private $CI, $Data, $mysqli, $ResultSet;
/**
* The constructor
*/
function __construct()
{
$this->CI =& get_instance();
$this->Data = '';
$this->ResultSet = array();
$this->mysqli = $this->CI->db->conn_id;
}
public function GetMultiResults($SqlCommand)
{
/* execute multi query */
if (mysqli_multi_query($this->mysqli, $SqlCommand)) {
$i=0;
do
{
if ($result = $this->mysqli->store_result())
{
while ($row = $result->fetch_assoc())
{
$this->Data[$i][] = $row;
}
mysqli_free_result($result);
}
$i++;
}
while ($this->mysqli->next_result());
}
return $this->Data;
}
}
そしてそれを次のように呼び出します:
$this->load->library('mydb');
$this->mydb->GetMultiResults("CALL test()");
この行をコメントアウトしたかのように、ライブラリの読み込み行がフラッシュ終了時にエラーを発生させることに気付きましたBad Version
{works like no error is er but SP does not execute}
この奇妙な問題を修正する方法についてのアイデア。