0

フィードバック フォームをより安全にするために、http://phpsec.org/projects/guide/2.htmlを確認しました。私の非常に限られたスキルで、次のようなものを思いつきました:

form.php (フォーム) と form-processing.php (送信に使用されるスクリプト) があるとします。form.php の冒頭:

<?php
session_start();
$token = md5(uniqid(rand(), true));
$_SESSION['token'] = $token;

...そして、フォーム自体の冒頭で、トークンを非表示フィールドにエコーします。

<form method="POST">    
<input type="hidden" name="token" value="<?php echo $token; ?>" />

form-processing.php の冒頭:

<?php

session_start();

if (isset($_SESSION['token']) && $_POST['token'] == $_SESSION['token'])
    {
    }
else {
  die( "Invalid token" );
}

これは安全に仕事をするでしょうか?

4

0 に答える 0