如何添加“编辑”按钮并更新数据库onclick?

时间:2019-03-09 02:22:23

标签: php html mysql

我有一个表,其中显示信息,但是我想添加一个编辑按钮,例如说“ Turned in”,并在单击时更新数据库中的列。

当有人单击编辑按钮时,我想将“ baatinn”从0更改为1。

Database

首先,如何在行中添加一个编辑按钮,其次是更新“ baatinn”以将值从0设置为1的查询。

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, baatin 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><?php echo $row["edit"]; ?></td>
        </tr>
        <?php 
    }
    echo "</table>";
} else {
    echo "0 results";
}
$conn-> close();

2 个答案:

答案 0 :(得分:0)

您可以将“编辑”文本更改为:

<form method="post">
  <button name="edit" value="1">Edit</button>
</form>

然后在PHP中添加:

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

答案 1 :(得分:0)

如@Kristopher Ives所述,您可以使用表单通过POST请求将数据提交回服务器,但是如果要提交多个表行作为数据,则需要确保每行分别存储到避免覆盖数据。您的表单可能看起来像这样:

<form name="edit">
    <table>
        <?php

        if ($result-> num_rows > 0) {
            while ($row = $result-> fetch_assoc()) {
                ?>
                <tr >
                    <td>
                        <input type="text" name="utleid[]" value="<?php echo $row["utleid"]; ?>">
                    </td>
                </tr>
                <?php 
            }
            echo "</table>";
        } else {
            echo "0 results";
        }

        ?>
    </table>
    <input type="submit">
</form>