2010-08-13 54 views

回答

0

然後$link_identifier的值似乎是10並且不應該是:-)

+2

它可能是10.不要忘記,資源只不過是一種特殊的數字類型。如果你執行'$ identifier = mysql_connect()',然後'echo $ identifier;',你會得到一個數字。 更有可能的是,資源在執行查詢之前已關閉...... – ircmaxell 2010-08-13 15:09:19

2

$link_identifier必須是您從mysql_connect得到的值。如果只使用一個數據庫,則不需要包含它;每個mysql_函數都使用默認情況下最後一個數據庫mysql_connect

如果您不想傳遞鏈接標識符,那麼很可能是您嘗試使用mysql_query,這並非意圖。我需要查看調用它的代碼才能說更多。

0

10對於MySQL鏈接標識符有點高,除非您在腳本中持有10個到MySQL的打開連接,或者關閉/重新連接每個查詢。你是否試圖傳遞一個以前的查詢結果而不是DB句柄?事情是這樣的:

$dbh = mysql_connect(...); 
$stmt = mysql_query('SELECT ...', $dbh); 

,後來經過一系列的疑問,也許做

$stmt = mysql_query('SELECT ...', $stmt); // <--using $stmt instead of $dbh 

而且,雖然不太可能,混合的mysqli和mysql手柄不支持。他們都做同樣的事情,並在內部使用相同的庫,但保持不能共享的獨立連接池。

1

我遇到了這個問題,絕望的谷歌搜索。 cHao和Lars說了一些事情激勵了我,我發現了我的問題。

我有一個數據庫類,除了許多其他標準類(我似乎重寫的次數多於重用),我將結果數據庫對象傳遞給。我以錯誤的順序實例化了它們(不是首先初始化數據庫),並且由於回退數據庫鏈接檢查程序,針對數據庫對象的大多數調用都會成功。

然而,對於一個特定的實例,這個回退會被跳過(我還沒有確定原因),並且我的實例化順序錯誤被暴露。

我的故事的道德:如果您在您的應用程序中使用類,對象創建/構造和依賴關係的三重檢查順序,請確保首先加載依賴類。

相關問題