如何使用id将多个单选按钮值更新到数据库中

时间:2016-06-08 09:18:42

标签: php jquery mysql

我使用datatable API列出了我的表(leaveform)记录(50)。在我的表中,我有一个批准休假的专栏。此列包含两个单选按钮(批准和拒绝)。每条记录都有自己唯一的ID。现在我想使用这些唯一ID将值更新到数据库中。

这是我的表 enter image description here

3 个答案:

答案 0 :(得分:2)

您可以创建一个功能,并通过点击'批准'来调用该功能。或者'拒绝'。让我举个例子。

例如:你有两个单选按钮,如下所示。 批准和拒绝

现在,您必须创建一个将通过单击单选按钮调用的函数。如下所述。

<input type="radio" name="rndLeave" value="approve" onclick="changeLeaveStatus(leaveid, 'approve')" /> Approve

<input type="radio" name="rndLeave" value="reject" onclick="changeLeaveStatus(leaveid, 'reject')" /> Reject

//第一个参数是leave id

//第二个参数是离开状态。

function changeLeaveStatus(leaveid, leaveStatus)
{

      $.ajax({
           url: 'leave_status.php',
           data: 'id='+leaveid+'&status='+leaveStatus,
           type: 'POST',
           success: function() {
           },
           error: function(){
           }
      });

}

这样您就可以从jquery datatable更新离开状态。

答案 1 :(得分:0)

你应该使用jquery onclick on table with handler&#34; tr&#34; - &GT;发送ajax数据进行更新。

$( "#dataTable tbody" ).on( "change", "input[type=radio]", function() {
  console.log( $( this ).text() );

   $.get( "path_to_php_page/update.php?id="+$( this ).attr("id")+"&state="+$(this).children("input[type=radio]:checked").val(), function( data ) {
      console.log( data );
   });
});
在update.php中

您应该获得$_GET['id']行的ID和$_GET['state']

的状态

答案 2 :(得分:0)

我看到你的标签有jquery所以我猜你可能想要jquery代码来解决这个问题。在这里。

var headers = "ID	imdbID	Title	Year	Rating	Runtime	Genre	Released	Director	Writer	Cast	Metacritic	imdbRating	imdbVotes	Poster	Plot	FullPlot	Language	Country	Awards	lastUpdated",
    content = "1	tt0000001	Carmencita	1894	NOT RATED	1 min	Documentary, Short		William K.L. Dickson		Carmencita		5.8	1136	http://ia.media-imdb.com/images/M/MV5BMjAzNDEwMzk3OV5BMl5BanBnXkFtZTcwOTk4OTM5Ng@@._V1_SX300.jpg	Performing on what looks like a small wooden stage, wearing a dress with a hoop skirt and white high-heeled pumps, Carmencita does a dance with kicks and twirls, a smile always on her face.			USA		2016-05-04 00:03:31.600000000",
    headerArray = headers.split(/\t/),
    contentArray = content.split(/\t/),
    object = {};

headerArray.forEach(function (k, i) {
    object[k] = contentArray[i];
});

console.log(object);