我创建了一个while循环,该循环将从数据库中调用数据,并且每一行都会带有一个按钮,但是当我单击一个按钮进行更新时,它将更新所有行。我做了一些研究,但是增量解决方案似乎对我的报价没有任何影响。
Edit on GitHub
答案 0 :(得分:0)
您可以为每个按钮赋予一个值。我还建议给他们一个比$i
不同的名称和更好的名称(这是PHP变量吗?)。
作为旁注:
<form>
个iside <td>
。您可以将<form>
作为<table>
的子级。但是,除非您计划使用POST方法,否则完全摆脱表单并使用链接可能会更好。 <?php
$users = $conn->query('SELECT id, First_name, Last_name, email, Country, paid FROM users')->fetch_all(MYSQLI_ASSOC);
?>
<?php foreach ($users as $row): ?>
<tr>
<td>
<a href="basic_table.html#"><?= $row['First_name']; ?></a>
</td>
<td class="hidden-phone"><?= $row['Last_name']; ?></td>
<td><?= $row['email']; ?></td>
<td><?= $row['Country']; ?></td>
<td><span class="label label-info label-mini"><?= $row['paid']; ?></span></td>
<td>
<form action="registered.php" method="GET">
<button class="btn btn-success btn-xs auth" name="myButton" value="<?= $row['id']; ?>"><span class="fa fa-check"
title="Authorize Access"></span></button>
<button class="btn btn-primary btn-xs" name="removeAccess"><span class="fa fa-times" title="Remove Access"></span></button>
<button class="btn btn-danger btn-xs" name="deleteUser"><span class="fa fa-trash-o " title="Delete user"></span></button>
</form>
</td>
</tr>
<?php endforeach; ?>
然后在您的registered.php中,您可以根据接收到的值执行UPDATE查询。
<?php
include 'mysqli.php';
if (isset($_GET['myButtton'])) {
$stmt = $conn->prepare("UPDATE users SET paid='ads' WHERE id=?");
$stmt->bind_param('s', $_GET['myButton']);
$stmt->execute();
}