更新:出于某些原因,php文件无法读取mysqli_query语句。
我有一个动态填充的表,该表具有一个输入框,用于输入一定数量的数量,以便将具有该数量的零件移动到其他位置。现在,我只是想使更新代码能够根据输入的金额来更新当前金额。最终,我将基于输入的数量和输入的位置添加向MySQL中插入新行的功能。
似乎正在访问update.php文件,但是在正在更新的MySQL数据库中没有运气。我不确定如何将数据发送到php文件以更新适当的行。
这是我的网页:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script>
<?php
if (isset($_GET['Placeid'])){
$moveplace = $_GET['Placeid'];
$sql = "SELECT *
FROM Parts p, Locations l
WHERE Placeid = '$moveplace' and p.locationid = l.locationid";
$result = mysqli_query($conn, $sql);
$queryResult = mysqli_num_rows($result);
if ($queryResult > 0){
while ($row = mysqli_fetch_assoc($result)){
<form onsubmit='updatetable()'
<table id='tablerun' class=searcht style='background-color:$bgcolor'>
<tbody>
<tr>
<td id='row1' value='".$row['id']."' name='moveid' style='display:none'>".$row['id']."</td>
<td value='".$row['PartNum']."' name='movepart'>".$row['PartNum']."</td>
<td value='".$row['ModelNum']."' name='movemodelnum'>".$row['ModelNum']."</td>
<td>".$row['Country']."</td>
<td>".$row['Region']."</td>
<td>".$row['Location']."</td>
<td>".$row['Placeid']."</td>
<td style='width:100px' value='".$row['UnitNum']."' name='moveunitnum'>".$row['UnitNum']."</td>
<td id='val' style='width:50px;' value='".$row['QTY']."' name='moveqty'>".$row['QTY']."</td>
<td value='0' type=text id='amt' name='moveamt'></td>
</tr>
</tbody>
</table>
</div>";
}
echo "<tr><td></td><td><input type='submit' class='submit' ></td></tr></form>";
}
}
?>
<script type="text/javascript">
function updatetable(){
$('#tablerun tr').each(function(){
var row_id = $(this).find("td:eq(1)").text();
var quantity = $(this).find("td:eq(8)").text();
var amt = $(this).find("input:eq(0)").val();
var data = {
id : row_id,
qty : quantity,
amt : amt
};
$.ajax({
type: "POST",
url: "update.php",
data: data,
success: function() {
$('.success').fadeIn(200).show();
$('.error').fadeOut(200).hide();
}
});
});
};
</script>
update.php:
<?php
include_once 'includes/database.inc.php';
$id = $_POST['moveid'];
$qty = $_POST['moveqty'];
$amt = $_POST['moveamt'];
$sql = "UPDATE parts set QTY = $qty - $amt where id = $id";
mysqli_query($conn, $sql) or die(mysqli_error($conn));
?>
P.S。我意识到,一旦完成此任务,我应该使用准备执行的准备好的语句。 感谢您的帮助