2016-10-07 79 views
1

你好溢出!每個用戶發佈到php頁面

我在此刻卡住的問題在後面。

  • 我已成功地爲選定的用戶添加了「✓」。
  • 我已經爲每個列出的用戶添加了一個「data-id」屬性。

我想弄明白的是我如何將用戶data-id從jquery發佈到我的php頁面。

的Jquery:

task_takers = []; 
    var i = 0; 
    $(".new-task-takers ul.select_takers li").each(function(){ 
    $(this).click(function(){ 
     $(this).toggleClass("active"); 
     if($(this).find('.fa').length > 0){ 
     $(this).find('.fa').remove(); 
     }else{ 
     $('<i class="fa fa-check" aria-hidden="true"></i>').insertBefore($(this).find("div")); 
     } 
     console.log("Selected:", $(this).data("id")); 
     i += 1; 
     task_takers[i] = $(this).data("id"); 
     console.log(task_takers); 
     console.log(i); 
    }); 
    }); 
    console.log(task_takers); 

PHP:

$task_takers = isset($_POST['task_takers']) ? $_POST['task_takers'] : NULL; 
var_dump($task_takers); 

所有我得到的是一個空


編輯:

我得到它太工作了,但是,如果您選擇用戶並取消選擇並重新選擇,則數組將會被淹沒。

陣列: [1:2,2:3,3:3,4:3,5:3,6:3]

正如你可以看到它修建垃圾ID:3

+0

看看你的控制檯和使用錯誤報告功能,以及HTML源的var_dump();調試工具 –

+0

我認爲你正在尋找[Ajax](http://api.jquery.com/jquery.ajax/) – JazZ

+0

添加新信息 – Tweath

回答

0

您必須將數據發送到php腳本才能使其工作。

這裏是jQuery.ajax從文檔一個小例子:

$.ajax({ 
    method: "POST", 
    url: "some.php", 
    data: { name: "John", location: "Boston" } 
}) 
    .done(function(msg) { 
    alert("Data Saved: " + msg); 
    }); 

我通常用它如下:

$("form").submit(function(){ 
    $.ajax({ 
     type: 'POST', 
     url: "/relative/path/to/php/script.php", 
     data: $("form").serialize(), 
     success: function(data) { 
     console.log(data) 
     }, 
     error: function(jqXHR, textStatus, errorThrown) { 
     console.log(textStatus, errorThrown); 
     } 
    }); 
    }); 

希望它能幫助。

編輯

自從上次編輯: 您可以通過使用array_unique刪除從PHP腳本數組的重複項目的解決這個問題。

例如:

php > $arr = array("1" => 2, "2" => 3, "3" => 3, "4" => 3, "5" => 3, "6" => 3); 
php > print_r($arr); 
Array 
(
    [1] => 2 
    [2] => 3 
    [3] => 3 
    [4] => 3 
    [5] => 3 
    [6] => 3 
) 
php > $uniq_arr = array_unique($arr); 
php > print_r($uniq_arr); 
Array 
(
    [1] => 2 
    [2] => 3 
) 
+0

我已經在我的提交表單上使用ajax來包含數組,但是每個用戶的信息沒有被髮送。 – Tweath

+0

好吧@Samuel,我看到你的編輯,我編輯了我的答案。 – JazZ

+0

但數組是從console.log通過jquery不是php。 – Tweath