使用隐藏值而不是$ _GET或$ _REQUEST

Sam*_*han 5 php hidden get request

我一直在使用表单的隐藏值.

例:

 <form method="post" action="page.php">
 <input type="text" name="name""
 <input type="hidden" name="book_id" value="$bookid">
 <input type="button">
 </form>
Run Code Online (Sandbox Code Playgroud)

$bookid$_GET值的book.php?id=34324

因此,而不是page.php?id=$bookid$bookid在隐藏领域使用.

我的问题:如果我使用隐藏值而不是使用$GET$POST在表单操作中,它是否有害?

Tre*_*non 4

回答你的问题:不,以这种方式使用隐藏输入并没有害处。

要修复提供的代码,您需要为隐藏输入指定名称并将方法更改为GET

 <?php
 if(array_key_exists('id', $_GET)) {
     $bookid = (int) $_GET['id'];
 }
 ?>

 <form method="get" action="page.php">
     <input type="text" name="name">
     <input type="hidden" name="id" value="<?php echo $bookid; ?>">
     <input type="button">
 </form>
Run Code Online (Sandbox Code Playgroud)