【发布时间】:2016-04-03 04:34:34
【问题描述】:
我正在从 jQuery AJAX 函数调用 GET 请求,但 GET 请求似乎没有正确调用。运行脚本后,地址栏只显示“index.php?”,而不是预期的“index.php?searchterm=searchterm”。
index.php
$(function(){
$("form").submit(function(){
var searchterm = document.getElementByID("searchterm").value;
$.ajax({
method: "GET",
url: "search.php",
data: searchterm
})
.done(function(res) {
document.getElementById("item1").innerHTML = res;
});
});
});
如果有任何相关性,这里是 search.php
<?php
if ($_SERVER['REQUEST_METHOD'] == 'GET') {
$searchterm= isset($_GET['searchterm']) ? $_GET["searchterm"] : '';
exec("C:\Users\Callum\AppData\Local\Programs\Python\Python35-32\python.exe search.py $searchterm", $output, $result);
echo $result[0];}
?>
【问题讨论】:
-
与此处的特定问题无关,但您可能希望考虑该代码上的 shell 注入漏洞。例如。当搜索词是“foo bar; dir c:”时返回什么?
-
是的,我已经考虑到了这一点。只是想先让脚本在基本级别上执行。
标签: javascript php jquery ajax get