【发布时间】:2014-09-12 04:48:12
【问题描述】:
我正在尝试将一个参数从 ajax 帖子传递给 perl,但 perl 就是看不到它...
html:
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("input").keyup(function(){
txt=$("input").val();
$.post("search1.pl",{suggest:txt},function(result){
$("span").html(result);
});
});
});
</script>
</head>
<body>
First name:
<input type="text" />
<p>Suggestions: <span></span></p>
</body>
</html>
perl:
#!/usr/bin/perl
use CGI;
my $q = CGI->new;
my $txt = $q->param('txt');
print "Content-type: text/html\n\n";
print "txt=$txt<br>";
print "HAHA1<br>";
print "HAHA2<br>";
输出:
建议:txt=
哈哈1
哈哈2
我期待看到“txt=”有我在输入框中输入的内容
有什么线索吗??
【问题讨论】:
-
要提交的参数名称是
suggest,而不是txt。 -
还将
use strict; use warnings;添加到 Perl 的顶部。他们将帮助您调试后续问题。 -
危险:此代码是vulnerable to XSS。用户输入在插入 HTML 文档之前需要转义!
-
昆汀,请详细说明如何转义,谢谢