> 백엔드 개발 > PHP 튜토리얼 > 주소 표시줄에서 위조된 데이터가 제출되는 것을 방지하는 PHP 방법 URL_php 팁

주소 표시줄에서 위조된 데이터가 제출되는 것을 방지하는 PHP 방법 URL_php 팁

WBOY
풀어 주다: 2016-05-16 20:37:10
원래의
947명이 탐색했습니다.

URL에서 위조된 데이터가 제출된 경우, 첫 번째는 이전 페이지의 소스를 확인하는 다음 코드입니다.

<&#63;/*PHP防止站外提交数据的方法*/
function CheckURL(){
$servername=$_SERVER['SERVER_NAME']; 
$sub_from=$_SERVER["HTTP_REFERER"]; 
$sub_len=strlen($servername); 
$checkfrom=substr($sub_from,7,$sub_len); 
if($checkfrom!=$servername)die("警告!你正在从外部提交数据!请立即终止!"); 
}
&#63;>
로그인 후 복사

이 방법은 브라우저 주소 표시줄에 수동으로 입력한 URL만 차단합니다.

실제로 서버에 URL(www.jb51.net)을 가리키는 하이퍼링크를 구성하는 한, 예를 들어 게시할 때 하이퍼링크를 추가한 다음 클릭하면 이 확인은 전혀 효과가 없습니다. .
현재로서는 중요한 데이터를 전송할 때 POST 방식을 사용하는 것이 더 안정적이라고 생각합니다.
데이터를 전달하기 위해 양식에 숨겨진 텍스트를 삽입할 수 있습니다.
또는 Ajax를 사용하여 클라이언트에서 서버로 데이터를 제출하려면 다음 방법을 사용하십시오.

/*创建XHR对象*/
function createXHR()
{
if (window.XMLHttpRequest){
var oHttp = new XMLHttpRequest();
return oHttp;
} 
else if (window.ActiveXObject){
var versions = ["MSXML2.XmlHttp.6.0","MSXML2.XmlHttp.3.0"];
for (var i = 0; i < versions.length; i++){
try {
var oHttp = new ActiveXObject(versions[i]);
return oHttp;
} catch (error) {}
}
}
throw new Error("你的浏览器不支持AJAX!");
}
/*用AJAX向page页面传递数据*/
function ajaxPost(url,query_string='')
{
var xhr;
xhr = createXHR();
xhr.open('POST',url,false);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=gb2312");
xhr.onreadystatechange = function(){if (xhr.readyState == 4)if (xhr.status != 200)return;}
xhr.send(query_string);
}
로그인 후 복사
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿