2017-08-01 39 views
-3

我使用開源在kitploit柱500內部服務器錯誤,PHP呼叫javascript函數

我是在網絡服務器執行該代碼,但發生張貼在PHP 500錯誤

echo '<script type="text/javascript">'; 
echo "beginCrawl('$urlToCrawl','$testId');"; 
echo '</script>'; 

呼叫beginCrawl

<script type='text/javascript'> 
function beginCrawl(value, valueTwo){ 
jQuery.post('crawler/begin_crawl.php', {specifiedUrl:value,testId:valueTwo}); 
} 
</script> 

這是定義beginCrawl

在「begin_crawl.php」

isset($_POST['specifiedUrl']) ? $urlToScan = $_POST['specifiedUrl'] : $urlToScan = ''; 
isset($_POST['testId']) ? $testId = $_POST['testId'] : $testId = 0; 

使用specifiedUrl和testId

日誌

,存在 「AJAX調用函數beginCrawl()」

,但不叫 「begin_crawl.php」 和發生後500錯誤

如何修復這個錯誤?

+2

500內部服務器錯誤。看看你的日誌文件,並找出發生了什麼 – Jens

+0

什麼Jens說,還有,你可能想[啓用錯誤報告](https://stackoverflow.com/questions/1053424/how-do-i-get-php-errors )在構建應用程序的過程中,當出現問題而不必深入查看日誌時,您將收到有用的錯誤消息 – DelightedD0D

+0

此外,您還說「* in log,exist」調用AJAX函數beginCrawl()「*」,但是您不要告訴我們你的代碼記錄在哪裏,所以它記錄它的事實,並沒有真正告訴我們任何東西 – DelightedD0D

回答

-1

我認爲,你不能在三元運算符中分配一個變量,爲了使用它,你應該使用一個變量並將三元運算符的結果賦值給它。您應該更改下面兩行:

isset($_POST['specifiedUrl']) ? $urlToScan = $_POST['specifiedUrl'] : $urlToScan = ''; 
isset($_POST['testId']) ? $testId = $_POST['testId'] : $testId = 0; 

這一行:

$urlToScan = isset($_POST['specifiedUrl']) ? $_POST['specifiedUrl'] : ''; 
$testId = isset($_POST['testId']) ? $_POST['testId'] : 0; 
+2

解釋爲什麼這應該幫助 – Jens

+0

只是做它,不解決你的問題,但它是它應該的方式寫出來 – delboy1978uk