PHP 폼 중복 제출 방지 기능 구현[token 기반 검증]

이 사례 는 PHP 가 폼 의 중복 제출 방지 기능 을 실현 하 는 것 을 설명 한다.여러분 께 참고 하도록 공유 하 겠 습 니 다.구체 적 으로 는 다음 과 같 습 니 다.
양식 중복 제출 을 방지 하 는 방법 은 여러 가지 가 있 습 니 다.그러면 오늘 은 phop 이 양식 중복 제출 을 어떻게 효과적으로 방지 하 는 지 소개 하 겠 습 니 다.
코드 가 아주 간단 해 요.
저 는 여러분 들 이 똑똑 하 다 고 믿 습 니 다.여러분 들 께 작은 demo 를 공유 해 드 리 겠 습 니 다.참고 하 실 수 있 습 니 다.


구체 적 인 코드:

<?php
/*
* 2016 9 29 08:09:13
*/
session_start();
header("Content-Type: text/html;charset=utf-8");
function set_token() {
  $_SESSION['token'] = md5(microtime(true));
}
function valid_token() {
  $return = $_REQUEST['token'] === $_SESSION['token'] ? true : false;
  set_token();
  return $return;
}
//  token       token
if(!isset($_SESSION['token']) || $_SESSION['token']=='') {
  set_token();
}
if(isset($_POST['web'])){
  if(!valid_token()){
    echo "token error,       !";
  }else{
    echo '    ,Value:'.$_POST['web'];
  }
}else{
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>PHP        </title>
<meta name="keywords" content="PHP" />
<meta name="description" content="PHP        " />
</head>
<body>
<div id="main">
  <div class="demo">
    <form method="post" action="">
      <input type="hidden" name="token" value="<?php echo $_SESSION['token']?>">
      <input type="text" class="input" name="web" value="  ">
      <input type="submit" class="btn" value="  " />
    </form>
  </div>
</div>
</body>
</html>
<?php }?>

더 많은 PHP 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있다.
본 논문 에서 말 한 것 이 여러분 의 PHP 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.

좋은 웹페이지 즐겨찾기