使用PHP for each从表中获取动态值


using PHP for each to get dynamic values from table

我已经有一段时间没有看php了,我的大脑出现了障碍。我正在尝试使用foreach从表中获取值,这样我就可以将值存储在会话中,还可以显示已排序的项目数。

例如第4项中的2项等

这是的表格

        <form id="products" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
            <?php 
                //every item from the products table is queried because all fields need to be displayed
                $sSQL = "SELECT * FROM products";
                $rsResult = mysql_query($sSQL);
            ?>
            <table id="products_table">
                <tr style="font-weight:bold">
                    <td style="text-align:center">ID</td>
                    <td>Ref No.</td>
                    <td>Product Name</td>
                    <td>Description</td>
                    <td style="text-align:right">Price</td>
                    <td colspan='2' style='text-align:center'>Add To Order</td>
               </tr>
            <!--for each record in the table that matches the query a row is created in the table and the data in the relevant field is displayed-->   
            <?php while ($row = mysql_fetch_array($rsResult)){ ?>
                <tr>
                <input type="hidden" name="productID[<? echo $row['productID']; ?>]" value="<? echo $row['productID']; ?>" />
                    <td style="text-align:center"><? echo $row['productID']; ?></td>
                    <td><? echo $row['productReference']; ?></td>
                    <td><? echo $row['productName']; ?></td>
                    <td><? echo $row['productDescription']; ?></td>
                    <td style="text-align:right"><? echo '£'. $row['productPrice']; ?></td>
                    <td style="text-align:center"><span>Qty</span><input type='text' name="qty[<? echo ($_POST['qty']); ?>]" value="" ></td>
           <? } ?> 
            </table>

这是php

 <?php 
          foreach($_POST as $key => $value){
              echo $key . ' ' .$value.'<br />';
              print_r($key);
          }
?>

我知道php对于填充会话等来说并不完整,我只是不知道如何从表单中获取值。这个php是我尝试的,至少从中获取某种值

非常感谢您的任何帮助

在您的代码中,不需要

 <input type="hidden" name="productID[<? echo $row['productID']; ?>

字段。也更改线路

<td style="text-align:center"><span>Qty</span><input type='text' name="qty[<? echo ($_POST['qty']); ?>]" value="" ></td>

<td style="text-align:center"><span>Qty</span><input type='text' name="qty[<? echo ($row['productID']); ?>]" value="" ></td>

以便在提交表单后,您可以使用访问发布的值

 $sSQL = "SELECT * FROM products";
 $rsResult = mysql_query($sSQL);
 while ($row = mysql_fetch_array($rsResult))
 {
     echo $_POST['qty'.$row['productID']];
 }

为什么不在输入中显示具有正确名称的数据?