PHP检查表单提交是否来自于本站

方法一:
你可以把处理提交数据的代码写到一个单独的文件里,比如form.php。   
  <?php   
  if   (defined(’INSIDE’))   {//判断是否有定义INSIDE常量   
  //处理表单   
  }   else   {   
  exit(’错误’);   
  }   
  ?>   
    
  然后,在提交表单的那个页面先定义INSIDE这个常量,常量值无所谓   
  define(’INSIDE’,   ’TRUE’);   
    
  接着,判断是否有提交,如果提交,则   
  include   ’form.php’;

======================================================================================= 方法二:

<?php 
if(PHP_VERSION<’4.1.0’){$_SERVER = $HTTP_SERVER_VARS;} 
if(isset($_SERVER["HTTP_REFERER"])){ 
//针对部分浏览器可能无HTTP_REFERER,所以做这么一个判断 
    $servername=$_SERVER[’SERVER_NAME’]; 
    $sub_from=$_SERVER["HTTP_REFERER"]; 
    $sub_len=strlen($servername); 
    $checkfrom=substr($sub_from,7,$sub_len); 
    if($checkfrom!=$servername) 
    { 
        echo "<script language=’javascript’>window.alert(’数据来源有误,本站不接收站外提交的数据!’);window.opener=self;window.close();</script>"; 
        exit; 
    } 

?> 
    此方法并非绝对安全,因为HTTP_REFERER是可以伪造的,只能是防君子但不能防小人了,但在一般情况下已经够用。

时间: 2024-08-04 00:00:47

PHP检查表单提交是否来自于本站的相关文章

Dreamweaver如何检查表单

  本教程为大家介绍一下Dreamweaver检查表单行为,使用"检查表单"行为可以为表单中各元素设置有效性规则. 一.Dreamweaver检查表单行为 1. 在文档中插入表单和文本域. 2. 重复第1步添加其它文本域. 3. 选择验证方法: 如果要在用户填写表单时分别验证各个文本域,请选择一个文本域. 如果要在用户提交表单时验证多个文本域,请点击"文档"窗口左下角标签选择器中的 标签.如果没有标签,首先在文档的"设计"窗口中,点击窗口内的红色

Dreamweaver检查表单行为

本教程为大家介绍一下Dreamweaver检查表单行为,使用"检查表单"行为可以为表单中各元素设置有效性规则. 一.Dreamweaver检查表单行为 1. 在文档中插入表单和文本域. 2. 重复第1步添加其它文本域. 3. 选择验证方法: 如果要在用户填写表单时分别验证各个文本域,请选择一个文本域. 如果要在用户提交表单时验证多个文本域,请点击"文档"窗口左下角标签选择器中的 标签.如果没有   标签,首先在文档的"设计"窗口中,点击窗口内的红

php实现过滤表单提交中html标签的方法

 有时候我们做的简单评论功能会发现有提交很多的html标签,这些标签会导致页面有一些外连的情况,下面我们一起来看在php中过滤表单提交的html标签方法. 近评论中有一些机器人提交的post链接,都是一些垃圾评论.为了减少这种无谓的链接内容出现,其实是可以用php来删除表单POST提交的html标签,这样机器提交的信息也不会得到他们要的结果.而且可以减少来自seo/seo.html" target="_blank">搜索引擎的惩罚. 这里以去掉<br/>标签

Zend Framework教程之Zend_Form组件实现表单提交并显示错误提示的方法_php实例

本文实例讲述了Zend Framework教程之Zend_Form组件实现表单提交并显示错误提示的方法.分享给大家供大家参考,具体如下: 同时公司又要开发一个群组功能..我也就想运用一下Zend_Form来实现创建群组的功能.主要还是看中Zend_Form可以在写Form时候.实现服务器端的验证功能..省得我们在把数据提交到数据库的时候再验证一次..所以呢.我就看了一下这方面的手册..通过Zend Framework手册找到了相关的使用说明...最简单的使用方式就是在控制器(Controller

JS两种类型的表单提交方法实例分析_javascript技巧

本文实例分析了JS两种类型的表单提交方法.分享给大家供大家参考,具体如下: 1.原始的 <form method="post" action="/student/stureg/add" id="form1" onsubmit="return subForm();"> <button type="submit" class="button red" style="

php实现过滤表单提交中html标签的方法_php技巧

本文实例讲述了php实现过滤表单提交中html标签的方法.分享给大家供大家参考.具体实现方法如下: 有时候我们做的简单评论功能会发现有提交很多的html标签,这些标签会导致页面有一些外连的情况,下面我们一起来看在php中过滤表单提交的html标签方法. 近评论中有一些机器人提交的post链接,都是一些垃圾评论.为了减少这种无谓的链接内容出现,其实是可以用php来删除表单POST提交的html标签,这样机器提交的信息也不会得到他们要的结果.而且可以减少来自seo/seo.html" target=

mvc form表单提交的几种形式整理总结_实用技巧

mvc中form表单提交的几种形式 第一种方式:submit 按钮 提交 <form action="MyDemand" method="post"> <span>关键字:</span> <input name="keywords" type="text" value="@keywords" /> <input type="submit&quo

Yii框架表单提交验证功能分析

本文实例讲述了Yii框架表单提交验证功能.分享给大家供大家参考,具体如下: 一.前端提交的三种方式 前面已经提出,表单提交一共只有三种方式. 1. 前端原生html (1)原生html标签 首先,直接使用html标签的input,a等: 其次,使用css进行布局. 再次,使用js或jquery方式验证 最后,提交(get/post/ajax,目前较多使用jquery提交). 注:该种方式由于较灵活,使用最多. (2)原生form js或jquery方式验证,yii方式提交. 相对灵活 <form

PHP 表单提交及处理表单数据详解及实例

先来看一下html form表单的源码: <html> <head> <title>Feedback Form</title> </head> <body> <form action="feedback.php" method="post"> Name:<input type="text" name="username" size=&qu