2017-03-03 20 views
-1

複数のチェックボックス値を取得するjQueryがあります。jQuery Ajaxを使用してPHPに複数のチェックボックス値を渡す

あなたはデモのためにhere

を参照することができるjQueryのための機能は、私たちは、チェックボックスを選択したときに、我々は我々がbtnUpdateクリックした後、データIDに基づいて選択するかを見ることができ、OKです。

今はAjaxでPHPを使ってデータベースに渡して保存したいと思っています。 ですから、例えば出力、そして、

1 -> read 
1 -> update 
2 -> update 

テーブル上のデータベースに保存します。ここでは

ID | chkStatus 
1 | read 
1 | update 
2 | update 

はHTML

<table> 
<tr> 
    <th>Nama</th> 
    <th>Create</th> 
    <th>Read</th> 
    <th>Update</th> 
    <th>Delete</th> 
</tr> 
<tr> 
    <td>coba</td> 
    <td><input type="checkbox" data-id="1" data-tipe="create"></td> 
    <td><input type="checkbox" data-id="1" data-tipe="read"></td> 
    <td><input type="checkbox" data-id="1" data-tipe="update"></td> 
    <td><input type="checkbox" data-id="1" data-tipe="delete"></td> 
</tr> 
<tr> 
    <td>coba 2</td> 
    <td><input type="checkbox" data-id="2" data-tipe="create"></td> 
    <td><input type="checkbox" data-id="2" data-tipe="read"></td> 
    <td><input type="checkbox" data-id="2" data-tipe="update"></td> 
    <td><input type="checkbox" data-id="2" data-tipe="delete"></td> 
</tr> 
<tr> 
    <td><input type="button" id="btnUpdate" value="Update"/> 
</tr> 

であるjQueryの

$(function(){ 
    $('#btnUpdate').click(function(){ 
    var cb = []; 
    $.each($('input[type=checkbox]:checked'), function(){ 
     cb.push($(this).data('id') + ' -> ' +$(this).data('tipe')); 
    }); 
    $('#status').val(cb.join("\n")); 
    }) 
}); 
+0

[PHPとのjQueryのAjax POST例]のhttp://stackoverflow.com/questions/42530480/how-do-i-pass-jquery-value-to-php/42531178#42531178 –

+2

可能な重複(HTTP ://stackoverflow.com/questions/5004233/jquery-ajax-post-example-with-php) –

答えて

1

あなたがここにあなたのケースで、私はあなたが配列心構築している方法を変更することをお勧めしたい、GETまたはPOSTの両方を経由してアレイをサーバ側に送信することができます

$(function(){ 
    $('#btnUpdate').click(function(){ 
     var cb = [], 
      post_cb = [] 

     $.each($('input[type=checkbox]:checked'), function(){ 
      var id = $(this).data('id'), 
       tipe = $(this).data('tipe') 

      cb.push(id + ' -> ' + tipe); 
      post_cb.push({ 
       'id': id, 
       'tipe': tipe 
      }); 
     }); 
     $('#status').val(cb.join("\n")); 

     $.ajax({ 
      'type': 'post', 
      'url': '/path/to/script.php', 
      'data': { 
       'cb': post_cb 
      }, 
      'success': function(response) { 
       // Do something 
      }, 
      'error': function(response) { 
       // Do something 
      } 
     }); 
    }) 
}); 

をそしてあなたのPHPファイルに:

<?php 

print_r($_POST['cb']); 
/* 

Array 
(
    [0] => Array 
     (
      [id] => 1 
      [tipe] => read 
     ) 

    [1] => Array 
     (
      [id] => 1 
      [tipe] => update 
     ) 

    [2] => Array 
     (
      [id] => 2 
      [tipe] => update 
     ) 

) 

*/ 

?> 
+0

回答ありがとう、hoそれをデータベースに保存する?私はテーブルの列を持っている場合:ID | CHKVALUE –

+0

あなたはどのデータベース技術を使用していますか? MySQL?私はデータベースに依存しているので、あなたが使用するPHP関数は異なるでしょうかと質問しています – Scoots

+0

こんにちはScoots、私はOracle DBを使用しています –

関連する問題