PHP防止跨域提交表单

时间:2022-09-25 07:41:23

在写用户注册的时候,一定要主要你的表单是否可以跨域提交.
php中解决的方法:
1.除了在页面做好表但验证之外,还要在提交的服务段的数据进行验证。
验证的主要代码如下:

复制代码 代码如下:


  $servername=$_SERVER['SERVER_NAME'];//当前运行脚本所在服务器主机的名字。
  $sub_from=$_SERVER["HTTP_REFERER"];//链接到当前页面的前一页面的 URL 地址
  $sub_len=strlen($servername);//统计服务器的名字长度。
  $checkfrom=substr($sub_from,7,$sub_len);//截取提交到前一页面的url,不包含http:://的部分。

 

  if($checkfrom!=$servername){
   $msg="数据来源有误!请从本站提交!";
   $this->redirect("m_index/reg",$msg);
   exit;
  }


2.本站关闭注册,使用像信浪微博,腾讯等开发平台登陆。
3.在apache 中配置hostlookups 参数。这个是以消耗性能为前提的。