>  기사  >  백엔드 개발  >  웹사이트가 새로고침되는 것을 방지하는 PHP 방법 요약_php 팁

웹사이트가 새로고침되는 것을 방지하는 PHP 방법 요약_php 팁

WBOY
WBOY원래의
2016-05-16 20:29:28843검색

이 기사의 예에서는 PHP가 웹사이트 새로고침을 방지하는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 방법은 다음과 같습니다.

WP로 구축된 사이트의 경우 자주 새로 고치면 데이터베이스에 부담이 발생합니다. 아래에는 잦은 새로 고침으로 인한 충돌을 방지하기 위한 코드가 첨부되어 있습니다.

방법 1, 코드는 다음과 같습니다.

코드 복사 코드는 다음과 같습니다.
session_start(); 
$k=$_GET['k']; 
$t=$_GET['t']; 
$allowTime = 1800;//새로 고침 방지 시간 
$ip = get_client_ip(); 
$allowT = md5($ip.$k.$t);  
if(!isset($_SESSION[$allowT])) 
{   
$새로고침 = 참
$_SESSION[$allowT] = 시간()
}elseif(time() - $_SESSION[$allowT]>$allowTime){   
$새로고침 = 참
$_SESSION[$allowT] = 시간()
}else{      
$새로고침 = 거짓
}     
?>

방법 2, 코드는 다음과 같습니다.
코드 복사 코드는 다음과 같습니다.
세션_시작()
$allow_sep = "2"
if (isset($_SESSION["post_sep"]))
{
if (time() - $_SESSION["post_sep"] < $allow_sep)
{
exit("자주 새로고침하지 마시고, 2초 정도 휴식 후 새로고침하세요."); }
그렇지 않으면
{
$_SESSION["post_sep"] = 시간()
}
}
그렇지 않으면
{
$_SESSION["post_sep"] = 시간()
}
?>
세 번째 방법, 코드는 다음과 같습니다.

코드 복사 코드는 다음과 같습니다.
세션_시작()
if(!emptyempty($_POST[이름])){
$data = $_POST[이름]
$태그 = $_POST[태그]
If($_SESSION[상태]==$tag){
에코 $데이터
}그밖에{
echo "새로고침이 허용되지 않습니다!"; }
}
$v = mt_rand(1,10000)
?>
name="tag" value=""> >
에코 $v; $_SESSION[상태] = $v
?>


참고: 코드가 있지만 이를 WordPress에 적용하려면 몇 가지 다른 작업이 필요합니다.

위 코드는 세션 검증을 기반으로 하기 때문에 2초 이내에 페이지를 새로 고친다고 가정하면, exit() 함수를 실행하여 메시지를 출력하고 현재 스크립트를 종료하게 되므로 다음 내용은 로드되지 않으므로 이 코드를 헤더에 넣고 코드를 먼저 실행한 후 다른 것을 로드하는 것이 가장 좋습니다. 코드를 바닥글에 넣으면 페이지 전체가 로드되고 마지막 줄만 "자주 새로 고치지 마세요"가 출력됩니다. 헤더에 넣으면 효과가 더 좋습니다. 효과를 보려면 F5를 두 번 누르세요.

물론 가장 좋은 방법은 새 PHP 파일을 만든 다음 헤더에서 호출하는 것입니다.

이렇게 하면 두 가지 이점이 있습니다.

첫째, 함수 코드를 수정할 때마다 헤더 파일을 열 필요가 없고, 다른 곳에서 실수로 코드를 변경할 염려가 없으며, 둘째, 오류가 발생하면 빠르게 수정할 수 있습니다. 수정해서 확인하거나 파일을 직접 삭제해도 됩니다.

코드 복사

코드는 다음과 같습니다. include('includes/forbiddenCC.php') ?>
여기서
는 모든 페이지 앞에 호출되어야 한다는 점에 유의하세요.
이 기사가 모든 사람의 PHP 프로그래밍 설계에 도움이 되기를 바랍니다.
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.