2016-07-25 73 views
0

所以,今天我有我的PHP另一個小問題,這是導致我得到一個服務器錯誤。你看,我有這個JavaScript函數:PHP中的服務器錯誤500

$.post('script.php', { limit: str }, function(result) { 
    console.log(result); 
}); 

這當然使得調用我的PHP文件:

require_once("../data/db-settings.php"); 
require_once("../data/file.php"); 
global $pdo; 
$list = array(); 
$limit = $_POST["limit"]; 
chop($limit, ";"); 
$stmt = $pdo->prepare("SELECT cust_id, cust_addr FROM project WHERE " . $limit . " = cust_id"); 
$stmt->execute(); 
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { 
     $list[] = $row; 
    }  
echo $list; 

的PHP的一點是要抓住從一個數據庫中的一些信息,用戶可以動態更改和使用。我假設的問題是我如何使用PDO,因爲我正在使用的代碼在另一部分中處於正常工作狀態。我也知道我的函數調用正在發送數據並正常工作,因爲當我檢查我發送的內容時,它會正確發送。

感謝任何幫助傢伙。

+4

檢查你的日誌或啓用調試,看看具體問題是什麼 –

+0

你的SQL查詢中應該有FROM和項目之間的空格。 – pioneer

+2

您的代碼易受SQL注入影響。道歉,這是一個錯字。它在代碼中是正確的。 –

回答

3

查看您的查詢FROMproject不能在一起。

您的查詢應該是這樣的:

$pdo->prepare("SELECT cust_id, cust_addr FROM project WHERE " . $limit . " = cust_id"); 
+0

你仍然有錯誤? –

+0

最終的問題是我的路徑錯了,儘管我不確定爲什麼,因爲路徑在另一部分的完全相同的地方被使用。我通過將函數移入文件 –

0

PDO不會引發內部服務器錯誤。必須是require_once。

結帳db-settings.php和file.php文件。如果找不到文件,Require_once會拋出500錯誤。

如果路徑正確,請檢查包含的文件。

正確的方法:檢查你的日誌文件。

+0

最終的問題是我的路徑錯了,儘管我不確定爲什麼,因爲路徑在另一個區段的完全相同的地方使用。我通過將函數移入文件來解決它。 –