简体   繁体   English

单击每行中的按钮时,如何更新显示sql数据的html表行?

[英]How can i update html table row which display sql data when click button in each row?

When i click Issue button allows to click first row button. 当我单击“ 发布”按钮时,可以单击第一行按钮。 second row button not working. 第二行按钮不起作用。 So i want to update the table rows i want. 所以我想更新我想要的表行。

Here is the interface - first row only update when click 2nd row not allows to click issue button. 这是界面-第一行仅在单击第二行时更新,第二行不允许单击发布按钮。

Interface Table 接口表

Here itemdisplay.php page with ajax script. 带有ajax脚本的itemdisplay.php页面。

<?php
include('../db_connector.php');

$req     = $_GET['cat1'];

$query = "select i.item_name ,r.qty, i.item_id , r.reqID, r.av from items i
JOIN req_items r on r.item_name = i.item_id
JOIN req rq on r.req_number = rq.req_number
WHERE i.status = 'common' AND 
rq.req_number = $req and r.status = 'approved' 
GROUP BY i.item_name ";

$result = mysqli_query($con,$query);

?> 

<table class="table table-hover" >
<thead>
<tr>
<th>#</th>
<th>Item Name</th>
<th>Quantity</th>
<th>Stock Available </th>


</tr>
</thead>
<tbody>
<?php
@$count = mysqli_num_rows($result);
$itemCount = 1;
if($count > 0) {
while ($row = mysqli_fetch_array($result)) {

$name = $row['item_name'];
$qty = $row['qty'];
$id = $row['item_id'];
$rqId = $row['reqID'];
$av = $row['av'];


$query1 = "select m.stock_level 
from main_stock m 
where m.item_id = $id and m.depot_id = 27";

$result1 = mysqli_query($con, $query1);

@$count = mysqli_num_rows($result1);
if ($count > 0) {
while ($row = mysqli_fetch_array($result1)) {

$level = $row['stock_level'];

?>

<tr id="mydiv">

<td><?php echo $itemCount; ?></td>
<td hidden><input class="form-control" name="rqId" 
type="text" id="rqId" readonly value="<?php echo $rqId; ?>"></td>
<td><input class="form-control" name="name" type="text" 
id="name" readonly value="<?php echo $name; ?>"></td>
<td><input class="form-control" name="qty" type="text" 
id="qty" readonly value="<?php echo $qty; ?>"></td>
<td><input class="form-control" name="level" type="text" 
id="level" readonly value="<?php echo $level; ?>"></td>
<td hidden><?php echo $av; ?></td>


<?php
if($level < $qty) {

if ($av != 1) {

echo 'Do not exists the available stock !!';
?>
<td><button class="btn btn-primary" type="submit" 
id="request" name="request">Request</button></td>


<?php

} else
{

?>

<td><p>Processing</p></td>


<?php
}

?>
<?php

} else
{


?>

<td><button class="btn btn-primary" type="submit" 
id="issue" name="issue">Issue</button></td>
<?php

}

?>


</tr>
<?php
$itemCount++;
}
}
}
}
else{
echo 'No records found';
}


?>
</tbody>
</table>

<script>



$('#issue').click(function(){

$.ajax({
url:"./ajax/cIssue.php",
method:"POST",
data:$('#rqId').serialize(),
success:function(data)
{
$("#mydiv").load(location.href + " #mydiv");
}
});
});
</script>

Here is the cIssue.php Query file 这是cIssue.php查询文件

<?php
include('../db_connector.php');

$id = $_POST["rqId"];

$query = "";

$query = "UPDATE `req_items`
SET `status` = 'issue' 
WHERE `reqID`=$id";
$result = mysqli_query($con, $query);
echo "Item Issued !";

$r = "UPDATE `main_stock`
SET `stock_level` = `stock_level` - (select `qty` 
from `req_items`  
where  `reqID`= $id )  
WHERE `depot_id`='27'  and `item_id`= (select `item_name`
from `req_items` 
where  `reqID`= $id ) ";

$l = mysqli_query($con, $r);




?>

i want to update any row i want when i click issue button. 单击发布按钮时,我想更新我想要的任何行。 If you want more details about my code, i can provide. 如果您需要有关我的代码的更多详细信息,我可以提供。

Hi you are using id of element to click that is why it is recognising only the first Issue button .Please use a class instead for click event of Issue button. 嗨,您正在使用element的ID进行点击,这就是为什么它仅识别第一个Issue按钮的原因。请为Issue按钮的click事件使用一个类。

 $(".myIssuebtn").on("click",function(){ //your ajax call here. }); 
 <button class="btn btn-primary" class="myIssuebtn" type="submit" id="issue" name="issue">Issue</button> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM