如何获取表中行的特定ID并使用该id更新它

问题描述 投票:0回答:2

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

Database

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";

Innlevering.php

<?php
include_once 'dbconnect.php';

$id = $_POST['id'];

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


?>
php mysql
2个回答
0
投票

在一个表单元素中设置所有行,然后使用值=当前行的主键的按钮。

<button name="id" value="<?php echo $row["primary_key_of_this_row"]; ?>">Edit</button>

1
投票

您可以编辑生成表的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";
© www.soinside.com 2019 - 2024. All rights reserved.