【发布时间】:2014-08-06 15:44:25
【问题描述】:
我需要什么
我在 html 表中的网页上显示了 Oracle 查询的结果。我还在每一行中为复选框添加了另一列。我的代码如下。
<?php
(...some code with Oracle Query...)
echo "<form method='post'>";
echo "<table>";
while($row = oci_fetch_array($sql)) {
echo "<tr>";
echo "<td>" . $row['SKU'] . "</td>";
echo "<td>" . $row['DESCRIPTION'] . "</td>";
echo "<td>" . $row['LOCATION_MAX'] . "</td>";
echo "<td>" . $row['QUANTITY'] . "</td>";
echo "<td><input type='checkbox'></td>";
echo "</tr>";
}
echo "</table>";
echo "</form>";
(...some more code...)
?>
单击每一行的复选框时,我需要对另一个数据库中的 MySQL 表使用 INSERT INTO。
我无法思考我应该如何获取每一行的所有信息并将其传递给另一个脚本,以便我可以将数据插入 MySQL 表中。
我的尝试
我想我会将行的每个值存储在一个数组中,然后将其放入复选框value 属性中并使用name 属性引用它,如下所示:
...
echo "<input type='submit' name='submit' value='submit'>";
while($row = oci_fetch_array($sql)) {
$rowVal = array(
"SKU" => $row['SKU'],
"DESCRIPTION" => $row['DESCRIPTION'],
"LOCATION_MAX" => $row['LOCATION_MAX'],
"QUANTITY" => $row['QUANTITY']
);
echo "<tr>";
echo "<td>" . $row['SKU'] . "</td>";
echo "<td>" . $row['DESCRIPTION'] . "</td>";
echo "<td>" . $row['LOCATION_MAX'] . "</td>";
echo "<td>" . $row['QUANTITY'] . "</td>";
echo "<td><input type='checkbox' name='checkbox' value='" . $rowVal . "'></td>";
echo "</tr>";
}
所以,我试图在脚本底部(或另一个脚本)的$_POST['name'] 属性中引用它。见下文。
if (isset($_POST['submit'])) {
foreach($_POST['checkbox'] as $checkVal) {
/*(do stuff here, like print out all check rows first
so I can understand what is going on, then eventually
write the MySQL INSERT INTO query.)*/
}
我的问题是什么
1)老实说,我一开始就很难把我的大脑包裹起来。我真的认为将所有$row 信息存储在一个数组中并将该数组变量分配给value 属性不会有问题。但是,一旦按下提交按钮,我无法弄清楚如何调用所有复选框。
问题是,当我将数组放入 value 属性时,我收到一条错误/通知,内容为 Notice: Array to string conversion in [/script location.php] on line [where the checkbox code is]。
2) 假设我不关心上面的通知。我仍然需要参考检查的数据,以便将其插入我拥有的 MySQL 数据库中。我什至不认为这很困难。一旦我引用了所有检查的数据,我就可以使用 foreach 循环遍历该数组并为查询中的每一行执行插入查询。
我该如何做到这一点?提前致谢!如果我遗漏了任何帮助者需要的重要信息,请告诉我,我可以更新此问题。
我唯一的要求是,如果需要,所提供的任何解决方案都应在 PHP、HTML 和 CSS/Oracle/MySQL 的范围内。我对 Javascript 或它的任何库都不太熟悉,因为这有点时间敏感,所以我没有时间学习所有可能涉及的内容。因此,除非有一个非常直接的 javascript 答案,否则在我的情况下它弊大于利。
谢谢!
-安东尼
【问题讨论】:
标签: php html sql arrays checkbox