我從來沒有使用mysqli直到今天,似乎無法得到這個權利。我想要的是一個簡單的函數,它將接受一個mysql過程調用並讓它返回這些結果。幫助mysqli和多個查詢
當我開始使用這些過程時,我注意到使用mysql_query查詢數據庫的舊方法不會再給我預期的結果;一個程序會成功返回,另一個程序不會。在閱讀了手冊和其他幾個例子之後,我發現這種奇怪行爲的原因是因爲結果需要緩衝然後清除。我嘗試了幾種方法來做到這一點,但都沒有成功。
我到目前爲止的工作,如果我創建mysqli對象的另一個實例,並會得到我的結果,但是,我不認爲這是正確的,我應該實例化20個不同的對象來取回20個不同的查詢。
再次,我想在這裏,是有一個單一的功能,我可以提供一個過程,並返回結果。
$mysqli = new mysqli('host','user','password','test');
$rs = $mysqli->query('CALL titles()');
while($row = $rs->fetch_object())
{
print_r($row);
}
$mysqli2 = new mysqli('host','user','password','test');
$rs2 = $mysqli2->query('CALL colours()');
while($row2 = $rs2->fetch_object())
{
print_r($row2);
}
你是如何去回合緩衝和釋放的結果?這篇文章在過去幫助過我:http://www.rvdavid.net/using-stored-procedures-mysqli-in-php-5/ – prodigitalson 2010-01-06 06:58:41
嗨prodigitalson,我只是簡單地調用查詢函數,循環遍歷那麼結果會是mysql_free_result()。像魅力一樣工作。然而,這是一個完全不同的動物。幾乎很抱歉,我在這一個程序路線。沒有太多的文件。 – Jim 2010-01-06 07:01:52
是的,您提供的鏈接也是我今天遇到的鏈接。他正在使用的查詢似乎是依賴於另一個,這不是我在這裏。我的查詢完全相互獨立。 – Jim 2010-01-06 07:04:03