【发布时间】:2010-03-25 03:39:52
【问题描述】:
提前道歉,我是PHP菜鸟!
我有一些隐藏字段的表单。我需要将值发布到“submit_rma.php”,这样它们就不会从数据库中丢失——我需要 $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>
【问题讨论】:
-
如果 $qty、$estimate_id 等与安全相关,通过 POST 发送它们对您没有多大帮助 - 它们仍然在页面的 HTML 源代码中可见,并且未加密发送。但是,这是将表单数据从一个地方发送到另一个地方的正常方式。如果不知道接收脚本是什么样子,就无法判断它是否有意义。你的问题到底是什么?
-
如果我的最终用户在这里弄乱了 URL,那么安全性就太容易破坏数据库了。例如, estmate_id 在我的数据库中有一个一对多的关系——我不能让它破坏我的表关系。安全不是问题,因为这是一个 Intranet 站点。
-
处理表单就像处理 url 一样简单。
-
不是当你的值是只读/隐藏时