我已經建立了一個查詢($query_q = "SELECT * FROM `table`;"
),並試圖在一個函數內執行它。MySQL查詢將不會執行 - 類 - >功能 - >表格
public function read_from_table() {
$query_q = "SELECT * FROM `table`";
$query_a = mysql_query($query_q);
while (mysql_fetch_array($query_a)) {
echo "Did it!";
//OR AS TRIED ANOTHER WAY
return "Did it!";
}
}
並稱爲例如:
echo $classInstance->read_from_table();
//OR AS TRIED ANOTHER WAY
$classInstance->read_from_table();
無論該函數和類已經取得了每一個可能的方法都試過了,但我仍然沒有得到結果的方式。
我得到的錯誤說執行時間超過了30秒的限制,所以我加了ini_set('max_execution_time', 0);
(知道這完全消除了時間限制)來查看查詢是否可以執行,它現在已經運行了30沒有生命跡象的分鐘。爲什麼查詢沒有執行?
附加註釋:
- 我知道,我現在用的折舊mysql_ *功能,這是在客戶端的請求,該網站已經取得了活後會更新,並完成一個點我準備將其全部更改爲mysqli - > *函數。
- 我正在調用的表(它的名稱已被剝離並替換爲
`table`
)只有9行,所以這應該不會大大影響執行時間(或將它?)。 - 我不得不從功能中去除所有敏感信息以滿足客戶和我的僱主。請記住,我不能透露客戶和我的僱主不希望透露的信息。
確定的鏈接已成功'的mysql_connect()打開'在這之前? –
正如我所看到的,這段代碼沒有問題。所以如果數據庫連接,它應該工作。也許在那些被刪除的信息中有東西。如果你只是運行這個代碼片段,它有效嗎?另外,使用文件頂部的'error_reporting(E_ALL);'和'ini_set('display_errors',1);'來檢查錯誤是什麼。 – vaso123
你也可以這樣做:在每一行或一段代碼之後放置一個'echo「步驟」,這樣你就可以看到代碼正在做什麼。也許這根本不是查詢? –