【PHP】隠しフィールドを使って値を送信する方法と注意点
PHPで隠しフィールドを使ってフォームから値を送信する方法を紹介します。
隠しフィールドには使用する上で注意する点があるので、合わせてシェアします。
隠しフィールドとは
隠しフィールドは、画面には入力欄として表示したくはないけど、値として入力データとともに送りたい
という場合に使われるのが隠しフィールドです。
ファイル構成
∟index.php
∟post.php
フォーム
<form action="post.php" method="POST">
<div>
購入数量:<input type="number" name="num" id="">
</div>
<div>
単価:<input type="number" name="price" id="">
</div>
<div>
消費税:10%
</div>
<input type="hidden" name="tax" value="10">
<input type="submit" value="合計">
</form>
上のように、隠しフィールドは、inputタグのtype属性でhiddenを選択することで可能になります。
name属性を付与することで、GETやPOSTのスーパーグローバル変数を使えば取得可能です。
$_POSTで取得して加工する
$num = $_POST['num'];
$price = $_POST['price'];
$tax = $_POST['tax'];
$sum = $num * $price;
$sum -= $sum * $tax / 100;
echo '合計金額は、', round($sum) , '円です。';
隠しフィールドの注意点
隠しフィールドは、ブラウザで改ざんができてしまいます。
そのため、改ざんされて困るような値には使ってはいけません。
そういった値は、サーバーに保持している値を使うようにしましょう。