While 循环 PHP 中的会话
Posted
技术标签:
【中文标题】While 循环 PHP 中的会话【英文标题】:Session in While Loop PHP 【发布时间】:2020-04-10 10:42:11 【问题描述】:<form action="includes/xxx.php" method="get">
<td><?php echo $row['id'];
$_SESSION['id'] = $row['id'];
?>
</td>
<td><?php echo $row['length']; ?></td>
<td><?php echo $row['name']; ?></td>
<td><?php echo $row['value'];
$_SESSION['value'] = $row['value'];
?>
</td>
<td><input type="text" name="value" placeholder="XXX"></td>
<td><button type="submit" name="submit" value="submit"> OK </button> </td>
</form>
在上面的代码中,我用 while 循环显示我的数据库表
每一行都有ID
/LENGTH
/NAME
/VALUE
/INPUT
/BUTTON
。
我从用户那里得到一个值,我想将它与同一行中的值相加,然后更新我的数据库表。
GET 方法/显示/SESSIONS 和更新已完成,但是当我填写输入字段时,结果保存在最后一个 id 中。
我知道我的代码覆盖了某些内容,但它无法理解我填写的输入内容。
我该如何解决?
【问题讨论】:
嗨,你能再解释一下吗,我猜你很着急。我们不是,但也许我们可以回答您的问题。 【参考方案1】:不要以这种方式使用会话。添加单独的隐藏输入框,将ID发送到服务器进行处理。
<td>
<input type="hidden" name="row_id" value="<?php echo $row['id']; ?>">
<input type="text" name="value" placeholder="XXX">
</td>
现在,当您提交表单时,您将有 2 个值,$_GET['row_id']
和 $_GET['value']
。使用row_id
更新您尝试更改的行。
如果需要,您仍然可以在处理提交的表单时设置会话值。
【讨论】:
@ΠαύλοςΚουναβης 很高兴我能帮上忙。以上是关于While 循环 PHP 中的会话的主要内容,如果未能解决你的问题,请参考以下文章