我是否可以消除在html中使用隐藏的表单字段,以在页面之间传递数据,而数据是所有表行的行ID

问题描述 投票:0回答:1

我正在开发一个Web应用程序,在该应用程序中,用户应单击订单旁边显示的链接以生成订单详细信息pdf该页面将特定用户的订单显示为带有两列的表格:-订单时间和每个订单的pdf链接均包含此代码段

echo '<table class="table"><tr>
<th>Order Submitted on</th>
<th>Get Details</th>
</tr>';
while ($row = $ordersByUser->fetch(PDO::FETCH_ASSOC)) {
    echo '<tr><td>'.$row['timestamp'].'</td>';

    echo '<td><form method="POST" action="generateorderpdf.php">
    <input type ="hidden" name="orderid" value='.$row['id'].'>
    <input type="submit" value="CLICK" class="btn btn-dark">
    </form></td></tr>';
}
echo '</table>';

我正在存储每个订单的主键

$ row ['id']
在一个隐藏字段中,然后将其发送到generateOrderPdf.php页面,以使用post方法的表单生成订单pdf。我的问题是,用户可以使用某些浏览器开发人员工具来更改隐藏的输入字段,并为其他用户生成pdf(我绝对不希望用户这样做)(这是我将帖子请求发送至生成pdf页面的原因,因为有人可以编辑获取网址并查看其他人的订单)。那么,有什么方法可以消除对隐藏输入字段的依赖,以将订单ID发送到generateOrderPdf.php页面?

我已经读到我可以使用会话来存储敏感数据,这样就不需要使用隐藏的表单域,但是我不知道甚至可以使用会话变量来解决此问题,如果可能的话,因为数据表?

php html forms session-variables hidden
1个回答
0
投票

实际上,您可以

© www.soinside.com 2019 - 2024. All rights reserved.