【问题标题】:How can I check if a html form was submitted from the correct domain?如何检查是否从正确的域提交了 html 表单?
【发布时间】:2015-07-26 11:43:43
【问题描述】:

我有一个 HTML 表单,它被提交到 PHP 页面进行处理。

我想在处理页面上确认表单是从我的网站而不是其他人的网站提交的。

如何确保请求只能来自我服务的页面?

【问题讨论】:

标签: php html


【解决方案1】:

也许这样的事情可以做到。

<?php
//Make sure your nonce is a number used once, or Random and generated per request.
$_SESSION['formhash'] = md5('any value to be hashed');
?>
<form> <!-- Form to be posted -->
<input type="hidden" name="hashed" id="hashed" value="<?php echo $_SESSION['formhash']; ?>" />
</form>


<!-- After Form is Posted, Probably the another page -->
<?php
if(isset($_POST["hashed"])){


    if($_POST["hashed"]==$_SESSION['formhash']){
      //Process your Form   
    }else{
      //Do SOmething Else   
    }
}
?>

您也可以阅读本文以获取更多信息Using a nonce as a security solution in PHP

【讨论】:

    猜你喜欢
    • 2014-06-13
    • 1970-01-01
    • 1970-01-01
    • 2014-07-10
    • 2012-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-13
    相关资源
    最近更新 更多