gpt4 book ai didi

mysql - 从表单创建数组并更新 mysql

转载 作者:行者123 更新时间:2023-11-29 08:28:06 24 4
gpt4 key购买 nike

这是我第一次尝试为单个表列发布多个记录,需要一些帮助。

首先,如何将这些记录放入数组中?

<?php
<form action="set_order.php" method="POST">
<table>
<tr>
$query = mysql_query("SELECT * FROM table ORDER BY order");
while ($result = mysql_fetch_assoc($query)) {
?>
<td><?php echo $result['order']; ?></td> //show current order
<td><input type="text" name="order[]" value="<?php echo $result['order']; ?>" /></td> //input new order
<td><input type="hidden" name="id[]" value="<?php echo $result['id']; ?>" /></td> //send related id
</tr>
<tr>
<td colspan ="2"><input type="submit" value="save" />
</tr>
</table>
</form>

第二个问题是如何将数组插入到表中。

table

id | order
1 | 3
2 | 4
3 | 2
4 | 1

我发现了这个:Post array from form to update mysql table

<?php
foreach ($_POST['id'] as $id) {
$order = $_POST['order']; // here is the problem
echo $id . ',' . $order . '<br />';
}
?>

但我无法使用 ECHO 获得结果。

我得到:

1, Array
2, Array
3, Array
4, Array

如果我能做到这一点,我想我可以使用 FOREACH 相应地更新表。

最佳答案

$_POST['id'] 和 $_POST['order'] 都是数组,迭代 id 是个好主意,但随后您需要在每次迭代时检索 $_POST['order'] 的相应元素.

由于当 HTTP 请求到达服务器时,两个数组都会同时填充,因此匹配的元素应该共享相同的键,这样应该可以工作:

<?php
foreach ($_POST['id'] as $key=>$id) {
$order = $_POST['order'][$key];
echo $id . ',' . $order . '<br />';
}
?>

关于mysql - 从表单创建数组并更新 mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17391716/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com