2013-05-17 12 views
-1

我在頁面底部發生這個致命錯誤,但沒有馬上看到它。該錯誤指向一個變量,$ sql,一個SQL字符串,它應該是一個SQL字符串。代碼是「$s = $pdo->prepare($sql);」。它似乎正常工作,訪問數據庫並檢索正確的信息。我之前在另一頁創建一個新的PDO連接之前使用過這段代碼。最後,在閱讀了關於此錯誤的其中一條我再也找不到的評論之後,我決定嘗試更改require_once()require()。它的工作。謝謝你。require vs require_once PDO連接 - 致命錯誤:調用成員函數prepare()在非對象上

我的猜測是我需要創建一個新的PDO連接來使用這個新的準備。我讀過腳本完成運行時PHP關閉連接。我相信prepare($ sql)不會被接受,不是因爲它是一個字符串,而是因爲某些其他問題與舊類相關聯或另一個名爲prepare的函數。

回答

0

你沒有問這個問題。

我認爲你正在使用避免代碼發佈的舊方法。

您是否閱讀過關於require_once的文檔?您在外部文件中創建PDO對象。所以,如果您使用require,它會每次創建。如果你使用require_once,它只會創建一次。

相關問題