帮助传递_POST表单数据PHP

时间:2010-03-24 19:09:46

标签: php html forms post

我提前道歉,我是一个PHP菜鸟!

我有一些隐藏字段的表单。我需要POST到“submit_rma.php”的值,以便它们不会从db中丢失 - 我需要$ qty,$ estmate_id和$ rma_type。

其余字段只是为用户显示数据并且只是只读。目前我只从qty文本字段中获取值。

有没有更简单的方法来传递这些值?由于安全问题,URL无法使用。

<form method="post" action="submit_rma.php";> 
<table>
   <tr>
      <td>
         Quantity
      </td>
      <td>
         <input type="text" name="qty" value="<?php echo $qty ?>" size="1"/><br/>
      </td>
   </tr>
   <tr>
      <td>
          Part #
      </td>
      <td>
         <input type="text" name="" value="<?php echo $model ?>" size="8" READONLY/><br/>
      </td>
   </tr>
   <tr>
      <td>
         Description
      </td>
      <td>
         <input type="text" name="" value="<?php echo $name_EN ?>" size="50" READONLY/><br/>
      </td>
   </tr>
   <tr>
      <td>
         Paid Date
      </td>
      <td>
         <input type="text" name="" value="<?php echo $sold_date ?>" size="6" READONLY/><br/>
      </td>
   </tr>
   <tr>
      <td>
         Amount Each
      </td>
      <td>
         <input type="text" name="" value="<?php echo $dealer_price ?>" size="8" READONLY/>
      </td>
   </tr>
</table>
         <input type="hidden" name="estmate_id" value="<?php echo $estmate_id ?>">
         <input type="hidden" name="rma_type" value="Short Shipped">
         <input type="submit" name="submit";">
</form>

2 个答案:

答案 0 :(得分:1)

也许使用隐藏的<INPUT>

<input type="hidden" name="qty" value="<?= $qty ?>">

这不会向用户显示任何内容。如果您不熟悉,<?= x ?>实际上相当于:<?php echo x; ?>

然而,这是一个安全问题,因为攻击者可以制作虚假请求并在字段中添加不同的值(回避页面并直接执行请求)。您应该尝试以其他方式获取值,例如通过在页面生成上运行INSERT,然后在POST上使用UPDATE或类似的东西。

答案 1 :(得分:0)

我是否指出显而易见的是你忘记了“qty”之后所有文本框的NAME属性?如果名称不存在,则值不会超出此页面: - )