[英]Update mysql database using a button in a table in PHP
您好,我正在嘗試更新mysql表中的列,但無法正常工作。
當我嘗試單擊確認時,它沒有任何改變。
orders.php
<?php while ($row = mysqli_fetch_array($results)) { ?>
<tr>
<td><?php echo $row['fullname']; ?></td>
<td><?php echo $row['address']; ?></td>
<td><?php echo $row['mobile']; ?></td>
<td><?php echo $row['order_item']; ?></td>
<td><?php echo $row['quantity']; ?></td>
<td><?php echo $row['total_amount']; ?></td>
<td><?php echo $row['payment']; ?></td>
<td><?php echo $row['status']; ?></td>
<td>
<a href="vieworders.php?pending=<?php echo $row['id']; ?>" class="edit_btn" onclick="return confirm('Update status?');">Pending</a>
</td>
<td>
<a href="vieworders.php?confirm=<?php echo $row['id']; ?>" class="del_btn" onclick="return confirm('Update status?');">Confirm</a>
</td>
</tr>
<?php } ?>
admin.php的
if (isset($_POST['pending'])) {
$pending = "Pending";
$id = $_POST['id'];
mysqli_query($db, "UPDATE order_information SET status='$pending' WHERE id=$id");
array_push($success, "Update SUCCESS");
}
if (isset($_POST['confirm'])) {
$confirm = "Confirm";
$id = $_POST['id'];
mysqli_query($db, "UPDATE order_information SET status='$confirm' WHERE id=$id");
array_push($success, "Update SUCCESS");
}
當您通過單擊鏈接發出“獲取”請求時,您期望腳本上有一個http Post。
試試這個
if (isset($_REQUEST['pending'])) {
$pending = "Pending";
$id = mysqli_real_escape_string($db,$_REQUEST['id']);
mysqli_query($db, "UPDATE order_information SET status='$pending' WHERE id=$id");
array_push($success, "Update SUCCESS");
}
if (isset($_REQUEST['confirm'])) {
$confirm = "Confirm";
$id = mysqli_real_escape_string($db,$_REQUEST['id']);
mysqli_query($db, "UPDATE order_information SET status='$confirm' WHERE id=$id");
array_push($success, "Update SUCCESS");
}
注意,我逃避了您的輸入...這是一個好習慣,可以使您擺脫嘗試SQL注入的peti-hacker
我希望這可以幫助你。 別介意我生銹的打字。 仍不使用移動應用
您的href轉到vieworders.php,這是一個$ _GET,您是如何鏈接admin.php的。 在vieworders.php中,您的ID將在$ _GET中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.