使用PHP filter_input函数的Jquery ajax

时间:2014-10-21 06:06:07

标签: php jquery ajax jquery-ajaxq

我试图用PHP捕获HTML表单数据,这些数据是从jquery ajax发送的。我使用jquery serializeArray()$.post方法来发送数据。之后我尝试用php捕获我的数据。但我的PHP代码并没有得到那些数据。这是为什么?有什么错误?这是我的代码

html文件

<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>

js file

$("document").ready(function(){

$('#btn').click(function(){
    var a = $('form').serializeArray();
    $.post('catch.php',{a:a});
});

});

php文件

<?php
$a = $_POST['a'];

echo filter_input(INPUT_POST, $a[0]['name'], FILTER_SANITIZE_FULL_SPECIAL_CHARS);



?>

**我用过firebug来检查输出

1 个答案:

答案 0 :(得分:2)

在这种情况下,我认为使用filter_var可能更简单。

<?php
  $a = $_POST['a'];

  foreach ($a as $key => $value){
    echo filter_var($a[$key]['name'], FILTER_SANITIZE_FULL_SPECIAL_CHARS);
  }

?>