【发布时间】:2018-11-29 20:05:44
【问题描述】:
假设我有 1 个名为 tblrooms 的表,列是
id
roomnamecapacity
并且有 3 个数据,在我的 html 代码中,有一个 while 循环来获取 3 个数据。然后文本框将是 while 循环的三次原因。但我正在尝试在我的 php 代码中使用 for 循环更新多个数据,请帮我解决这个问题。我想使用 for 循环更新文本框内的 id。请让我知道如何用数组声明一个变量。
代码如下:
<form action="sample_server.php" method="post">
<?php
$db = mysqli_connect("localhost", "root", "", "psbr");
$rooms = mysqly_query($db, "SELECT * FROM tblrooms");
while($row = mysqli_fetch_array($rooms)) { ?>
<input type="text" name="text_id<?php echo $row['id']; ?>" value = "<?php echo $row['id'];" ?>
<?php } ?>
<input type="submit" name="submit">
</form>
sample_server.php
for ($i=1; $i < isset($_POST['text_id']); $i++) {
$sql = mysqli_query($db, "UPDATE tblrooms SET capacity = capacity - 1 where id = {$i}");
}
【问题讨论】:
-
使用准备好的语句来防止 SQL 注入。
-
如果它在核心 php 中,创建一个函数并调用要更新它的函数。
-
有什么问题?您将返回三个记录,每个记录包含三个字段。您打算如何处理每三个记录的这三个字段?现在,您只需为
id创建三个文本框,一个接一个。 -
@VamsiKrishna 我不明白你的意思 :( 我是新手顺便说一句 huhu
-
@GordonM 但它是用户输入,可以很容易地更改。