带有PHP过滤器输入函数的Jquery ajax
我试图用PHP捕获HTML表单数据,这些数据是从jQueryAjax发送的。我正在使用jquery带有PHP过滤器输入函数的Jquery ajax,php,jquery,ajax,jquery-ajaxq,Php,Jquery,Ajax,Jquery Ajaxq,我试图用PHP捕获HTML表单数据,这些数据是从jQueryAjax发送的。我正在使用jqueryserializeArray()和$.post方法发送数据。之后,我尝试用php捕捉数据。但我的php代码无法获取这些数据。为什么呢?错误是什么?这是我的密码 html文件 php文件 **我已经使用firebug检查了输出,在这种情况下,我认为它可以更简单地使用 没有人尝试过吗?:(向PHP中添加一些调试代码,以显示它实际接收到的内容。如果您试图筛选不存在的内容或格式错误的内容,则会遇到问题
serializeArray()
和$.post
方法发送数据。之后,我尝试用php捕捉数据。但我的php代码无法获取这些数据。为什么呢?错误是什么?这是我的密码
html文件
php文件
**我已经使用firebug检查了输出,在这种情况下,我认为它可以更简单地使用
没有人尝试过吗?:(向PHP中添加一些调试代码,以显示它实际接收到的内容。如果您试图筛选不存在的内容或格式错误的内容,则会遇到问题。请在PHP中创建一些日志函数,用于记录var\u导出的结果($\u POST,true)
然后从这里开始这应该不如过滤输入
那么安全。我真的很想知道为什么php团队让过滤输入
函数忽略通过ajax发布的数据。这已经让我连续10个小时发疯了。为什么这没有让任何人感到不安?每个人都接受ajax发布的数据吗并将它们构建到sql查询中?
<html>
<head>
<script src='http://code.jquery.com/jquery-1.11.1.min.js'></script>
<script src="js.js" type="text/javascript"></script>
</head>
<body>
<form>
<input type='text' name='name' />
<input type='button' id='btn' value='but'/>
</form>
</body>
</html>
$("document").ready(function(){
$('#btn').click(function(){
var a = $('form').serializeArray();
$.post('catch.php',{a:a});
});
});
<?php
$a = $_POST['a'];
echo filter_input(INPUT_POST, $a[0]['name'], FILTER_SANITIZE_FULL_SPECIAL_CHARS);
?>
<?php
$a = $_POST['a'];
foreach ($a as $key => $value){
echo filter_var($a[$key]['name'], FILTER_SANITIZE_FULL_SPECIAL_CHARS);
}
?>