2015-01-10 37 views
0

,我的jQuery代碼如下:PHP filter_input_array()我使用jQuery AJAX到一個數組發送到PHP腳本不工作

$.ajaxSetup({ 
    cache: false 
}); 
$.ajax({ 
    type: "POST", 
    data: { 
    row_ids : row_ids//This is the array sent 
    }, 
    url: "CRUD.php", 
    success: function (response) { 
    alert(response); 
    }, 
    error: function() { 
    alert("Server side error, try later!"); 
    }      
}); 

是可以獲得數組的PHP代碼如下:

<?php 
//Working code : 
$ids = $_POST['row_ids']; 
print_r($ids); 

//Not working code : 
$ids = filter_input_array(INPUT_POST, 'row_ids'); 
print_r($ids); 
?> 

用於通過AJAX發送到PHP中filter_input(INPUT_POST, 'variable_passed'); 一個簡單的變量是對我工作的罰款。

有人能告訴我爲什麼它不適用於filter_input_array?

謝謝。

+0

爲第二個參數'filter_input_array'是醚陣列或整數常量。閱讀手冊 –

回答

0

您正在使用此功能有誤。請閱讀如何使用此功能的PHP文檔中http://php.net/manual/en/function.filter-input-array.php

第二個參數必須是陣列的定義來驗證

實例:

<?php 
error_reporting(E_ALL | E_STRICT); 
/* data actually came from POST 
$_POST = array(
     'product_id' => 'libgd<script>', 
     'component'  => '10', 
     'versions'  => '2.0.33', 
     'testscalar' => array('2', '23', '10', '12'), 
     'testarray'  => '2', 
); 
*/ 

$args = array(
     'product_id' => FILTER_SANITIZE_ENCODED, 
     'component' => array(
        'filter' => FILTER_VALIDATE_INT, 
        'flags'  => FILTER_REQUIRE_ARRAY, 
        'options' => array('min_range' => 1, 'max_range' => 10) 
     ), 
     'versions'  => FILTER_SANITIZE_ENCODED, 
     'doesnotexist' => FILTER_VALIDATE_INT, 
     'testscalar' => array(
         'filter' => FILTER_VALIDATE_INT, 
         'flags' => FILTER_REQUIRE_SCALAR, 
     ), 
     'testarray' => array(
         'filter' => FILTER_VALIDATE_INT, 
         'flags' => FILTER_REQUIRE_ARRAY, 
         ) 

    ); 

    $myinputs = filter_input_array(INPUT_POST, $args); 

    var_dump($myinputs); 
    echo "\n"; 
?> 
+0

中的更多信息如果我錯誤地使用它,爲什麼這對我有用:filter_input(INPUT_POST,'name_of_the_variable_sent_from_ajax');如果我做了一個var轉儲,當它是一個簡單的var而不是一個數組時,我得到了正確的值 –

+0

仔細看看你正在談論一個完全不同的函數:filter_input。在你正在討論filter_input_array的文章中。請爲這兩種功能及其功能準備好文檔。 – shaddy

相關問題