首页 > 解决方案 > 如何获取表中行的特定 ID 并使用该 ID 更新它

问题描述

所以我想在我的表格末尾添加一个按钮,一旦你点击它,它会将数据库中的“baatinn”从0更新到1。我已经想出了如何添加按钮等但是当我点击它时,它将更新所有行,而不是您单击按钮的行,从 0 到 1。所以我只需要知道它如何只更新您单击按钮的行的“baatinn”。我有一个 ID 的主键。“baatinn”的默认值为 0

数据库

HTML:

<tr>
  <th>Båt ut</th>
  <th>Båt inn</th>
  <th>Båtnr</th>
  <th>Fornavn</th>
  <th>Etternavn</th>
  <th>Tid</th>
  <th>Kr</th>
  <th>Edit</th>
</tr>

PHP:

$sql = "SELECT utleid, inntid, baatnr, fornavn, etternavn, tid, kr, baatinn     FROM utleie WHERE baatnr LIKE '%$sok%' or fornavn LIKE '%$sok%' or etternavn     LIKE '%$sok%' or tid LIKE '%$sok%' ORDER BY id desc";
$result = $conn-> query($sql);

if ($result-> num_rows > 0) {
    while ($row = $result-> fetch_assoc()) {
        ?>
        <tr>
            <td><?php echo $row["utleid"]; ?></td>
            <td><?php echo $row["inntid"]; ?></td>
            <td><?php echo $row["baatnr"]; ?></td>
            <td><?php echo $row["fornavn"]; ?></td>
            <td><?php echo $row["etternavn"]; ?></td>
            <td><?php echo $row["tid"]; ?></td>
            <td><?php echo $row["kr"]; ?></td>
            <td><form method="post" action="innlevering.php">
        <button name="edit" value="1">Edit</button>
</form></td>
        </tr>
        <?php 
    }
    echo "</table>";
} else {
    echo "0 results";

Inlevering.php

<?php
include_once 'dbconnect.php';

$id = $_POST['id'];

if ($_POST['edit']) {
   $conn->query("UPDATE utleie SET baatinn=1 WHERE id={$id}");
}


?>

标签: phpmysql

解决方案


您可以编辑生成表格的 php 代码。您必须将按钮的名称设置为 id 并将值设置为数据库表的 id 字段(因此您还必须编辑 mysql 查询,如下所示

PHP

$sql = "SELECT id, utleid, inntid, baatnr, fornavn, etternavn, tid, kr, baatinn     FROM utleie WHERE baatnr LIKE '%$sok%' or fornavn LIKE '%$sok%' or etternavn     LIKE '%$sok%' or tid LIKE '%$sok%' ORDER BY id desc";
$result = $conn-> query($sql);

if ($result-> num_rows > 0) {
    while ($row = $result-> fetch_assoc()) {
        ?>
        <tr>
            <td><?php echo $row["utleid"]; ?></td>
            <td><?php echo $row["inntid"]; ?></td>
            <td><?php echo $row["baatnr"]; ?></td>
            <td><?php echo $row["fornavn"]; ?></td>
            <td><?php echo $row["etternavn"]; ?></td>
            <td><?php echo $row["tid"]; ?></td>
            <td><?php echo $row["kr"]; ?></td>
            <td><form method="post" action="innlevering.php">
        <button name="id" value="<?php echo $row["id"]; ?>">Edit</button>
</form></td>
        </tr>
        <?php 
    }
    echo "</table>";
} else {
    echo "0 results";

推荐阅读