0

这是一个内部订单接收网页。它看起来像这样。我假设我想要一个产品的 HTML 表格(来自下拉框)和数量。我的问题是如何在按下保存后从表中获取数据。他们可能已经输入了一种产品或 40 种产品,因此它需要有点动态,而不仅仅是 40 个输入框并从 $_POST 接收它们(或者这可能是我需要做的)。我想我在问如何解决这个问题。这是我可以用 PHP 做的事情还是我需要使用 js?

谢谢。如果我不清楚(明显的可能性),请告诉我,我会再尝试解释我所追求的

4

4 回答 4

0

use arrays as input field names.. like quantity[0], quantity[1]...quantity[10] etc... then use foreach to process incoming $_POST array...

here is how you'll implement lots of rows and cols.

<form method="post">
<table>
<?
$rows=10;
$cols=3;
$colsArr = array();
$colsArr[0] = "qty";
$colsArr[1] = "desc";
$colsArr[2] = "unitprice";
for($i=0;$i<$rows;$i++)
{
    echo "<tr>";
    for($j=0;$j<$cols;$j++)
    {
        $name = $colsArr[$j];
        echo "<td><input type=text name=".$name."[" . $i ."]></td>";
    }
    echo "</tr>";
}

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

take a look at this code's output's source. when you post such a form you'll get: (i'm posting 3 items with quantity, 1,3,5 with description desc1,desc2,desc3 and prices 1.00$,2.00$,5.00$)

Array ( [qty] => Array ( [0] => 1 [1] => 3 [2] => 5 [3] => [4] => [5] => [6] => [7] => [8] => [9] => ) [desc] => Array ( [0] => desc1 [1] => desc2 [2] => desc3 [3] => [4] => [5] => [6] => [7] => [8] => [9] => ) [unitprice] => Array ( [0] => 1.00$ [1] => 2.00$ [2] => 5.00$ [3] => [4] => [5] => [6] => [7] => [8] => [9] => ) )
于 2012-08-14T23:43:23.507 回答
0

您可以创建一个以数组形式收集数据的表单,例如:

<tr>
    <td><input type="text" name="item[]" /></td>
    <td>
    <select name="qty[]">
        <option value="1">1</option>
        <option value="2">2</option>
    </select>
    </td>
</tr>
于 2012-08-14T23:12:52.027 回答
0

你可以用php来做,有一个添加行按钮,提交表单,不要保存它,只需重新显示发布数据并添加另一行更多输入。但是 JS 版本可能会给用户更好的体验

于 2012-08-14T23:10:26.607 回答
0

是的,您可以使用$_POST.

是的,使用 PHP 是可能的。您可能还需要某种类型的数据库来处理这个问题

于 2012-08-14T23:11:12.603 回答