2012-01-06 23 views
0

但是,這是一個問題,:ezSql與多個查詢

在PHP文件,我正在一個ezSql命令(http://justinvincent.com/ezsql):

$_result = $db->get_var("CALL spcheck ('".$_var1."')"); 

然後,我有a。如果($ _result ..

內,如果,我有:

$_logInsert = $db->query("CALL splog1 ('".$_referrer."','".$_userAgent."','".$_ipAddress."','".$_countryCode."')"); 

但是,我得到的錯誤:

「警告:命令不同步;你不能現在運行這個命令「當我嘗試第二個數據庫調用(第一個運行正常)

是不可能有一個全局定義的$ db並在整個頁面多次使用它嗎?以某種方式"cancel執行所以它的後get_var我可以重複使用嗎?

+0

改編可以重新使用了'$ db'變量多次。 – 2012-01-06 08:43:50

+0

這就是我希望..任何想法,爲什麼我會得到上述錯誤? – dpluscc 2012-01-06 16:57:33

+0

它似乎在使用get_var中的「CALL」等。當我將其更改爲直接的SQL語句時,它運行正常。沒有辦法與ezSQL庫建立中間層? – dpluscc 2012-01-06 17:46:51

回答

2

快速谷歌和ezSQL的引擎蓋下一個高峯之後。

ez_sql_mysql.php或任何名字,你可以給文件81行截至V2.11

舊代碼:

else if (! $this->dbh = @mysql_connect($dbhost,$dbuser,$dbpassword,true)) 

新代碼:

else if (! $this->dbh = @mysql_connect($dbhost,$dbuser,$dbpassword,true,131074)) 

Drupal Bugs - "Patch needed to execute MySQL stored procedures"

+1

我實際上必須將其更改爲131074,但它工作正常!非常感謝您的發現! – dpluscc 2012-01-10 03:34:12

+0

感謝您的反饋。更新了處理此問題的下一個人的答案。 – 2012-01-10 05:08:00