从输入表单PHP获取特定数组值

从输入表单PHP获取特定数组值,php,mysql,arrays,mysqli,Php,Mysql,Arrays,Mysqli,好的,我有一个从mysql表中提取的PHP数组。数组是基于表中经常添加和删除项的项生成的。在项目名称“Submit”旁边有一个按钮。我希望该按钮与同一索引中的项目标识。然后,它将提交的项传递到一个新表 <form class="omb_loginForm" action="inc/contribute_item.php" autocomplete="off" method="POST"> <?php $item_array; $index = 0;

好的,我有一个从mysql表中提取的PHP数组。数组是基于表中经常添加和删除项的项生成的。在项目名称“Submit”旁边有一个按钮。我希望该按钮与同一索引中的项目标识。然后,它将提交的项传递到一个新表

<form class="omb_loginForm" action="inc/contribute_item.php" autocomplete="off" method="POST">
<?php
     $item_array;
     $index = 0;
     $index_2 = 1;
     $r = "r";
     $b="b";
     foreach ($item_array as $id_array){ ?>
        <tr id="<?php echo $r.$index_2; ?>">
        <td><?php echo $item_array[$index] ?></td>
        <td> <?php echo $quantity_array[$index]; ?></td>                   
        <td> <?php echo $price_array[$index]; 
             $selectedItem = $item_array[$index]; ?>
        <input type='hidden' name='hidden' value='<?php $selectedItem ?>'>
        <input type='submit' name='submit' value"submit">
     </form> </td>
  <?php $index++;
        $index_2++; ?>
       </tr>

您的思路是正确的,只需确保开始和结束html标记正确对齐即可

每行使用一个表单 如果要通过隐藏输入传输所选值,请确保这些输入中的每一个都在其自己的表单中,并使用相应的提交按钮:

<!-- row 1: -->
<form action="inc/contribute_item.php" method="post">
  <input type="hidden" name="myValue" value="1"/>
  <input type="submit" value="submit"/>
</form>

<!-- row 2: -->
<form action="inc/contribute_item.php">
  <input type="hidden" name="myValue" value="2"/>
  <input type="submit" value="submit"/>
</form>
使用单选按钮或复选框 另一种选择是在每行中使用
元素。这样,您可以只使用一个全局表单:

<form action="inc/contribute_item.php" method="post">

<table>
  <?php foreach(...) { ?>
  <tr>
    <td>...</td>
    <td>
      <input type="radio" name="myValue" value="<?= $index ?>"/>
    </td>
  </tr>
  <?php } ?>
</table>

<input type="submit" value="submit"/>
</form>

...

所以我把foreach“($item\u数组作为$id\u数组)”循环放进去了?明白了!我没有设置value=。。。正确地这是非常,非常糟糕的造型对我来说的形式。它起作用了,但这不是一个好办法。非常感谢。当使用
mysqli
时,您应该使用参数化查询,并将用户数据添加到查询中。不要使用字符串插值来完成此操作,因为这样会创建严重的错误。
<!-- don't start your form here -->
<table>
  <?php foreach(...) { ?>
  <tr>
    <td>...</td>
    <td>
      <form action="inc/contribute_item.php" method="post">
        <input type="hidden" name="myValue" value="<?= $index ?>"/>
        <input type="submit" value="submit"/>
      </form>
    </td>
  </tr>
  <?php } ?>
</table>
<form action="inc/contribute_item.php" method="post">

<table>
  <?php foreach(...) { ?>
  <tr>
    <td>...</td>
    <td>
      <input type="radio" name="myValue" value="<?= $index ?>"/>
    </td>
  </tr>
  <?php } ?>
</table>

<input type="submit" value="submit"/>
</form>