获取从表派生的数组的值

时间:2015-04-07 13:29:22

标签: php mysql

我有秘书可以选择的产品清单。从产品表中查找这些产品,并使用数组显示它们。

秘书可以通过选中与产品对应的复选框来选择最多任意数量的产品。提交后,检查的产品将显示在新页面中。

据称,秘书可以输入每个选定产品的包装箱数量,重量,生产日期和价格。因为我必须将信息插入到表中,所以我想知道如何使用不知道值的数组来完成它。我已经看到了将数组插入表中的示例,但没有看到从表中派生的数组。

编辑:在代码中添加。

    $products = $mysqli->query("SELECT ProdName FROM product");
    $numofprod = mysqli_num_rows($products);

    $i = 0;
    while($i < $numofprod) {
        while($row = $products->fetch_assoc()){
        $prodlist = $row["ProdName"];

                echo "<input type='checkbox' class='prodlist' name='check_list[]' id='prodlist";
                echo "$i'";
                echo " value='";
                echo $prodlist;
                echo "'>";
                echo $prodlist;
                echo "</input>";

             $i++;
            }   
    }

//提交后,它将执行以下代码

            if(isset($_POST['add_purchase_submit'])){//to run PHP script on submit
            if(!empty($_POST['prodlist'])){
            echo "<table><tr><th></th><th> Boxes </th> <th> Weight </th> <th> Price </th>  <th> Production Date </th> </tr>";

            // Loop to store and display values of individual checked checkbox.
            foreach($_POST['prodlist'] as $selected){                   
            echo "<tr><td>";
            echo $selected;
            echo "</td><td>";
            echo "<input type='text' name='ppbox' size='10'>";
            echo "</td><td>";
            echo "<input type='text' name='ppweight' size='10'>";
            echo "</td><td>";
            echo "<input type='text' name='ppprice' size='10'>";
            echo "</td><td>";
            echo "<input type='text' name='ppproducion' size='15' placeholder='MM/DD/YY'>";
            echo "</td><td></tr>";
                }
            }
        }

我也意识到我在第二种形式的名字中有错误......

1 个答案:

答案 0 :(得分:0)

for($i = 0; i < array.size(); i++){
  echo '<input name="array['.$i.']"'>;
}

这会为您的数组提供一定量的输入。稍后你可以再次在php中读取它作为一个数组:

foreach($_POST['array'] as $entry){
  .. do things ..
}

只有基本的scatch,但这显示了如何使用数组作为输入的名称。您可以将它们用于所需的复选框或其他字幕。