이 글의 내용은 양식의 반복 제출을 방지하는 PHP 솔루션입니다. 이제 여러분과 공유합니다. 도움이 필요한 친구들은 이 글의 내용을 참조할 수 있습니다.
<br>
<br>
현재 양식 페이지 is_submit은 0
SESSION_START(); $_SESSION['is_submit'] = 0;
<form id="reg" action="post.php" method="post"> <p>用户名:<input type="text" class="input" name="username" id="user"></p> <p>密 码:<input type="password" class="input" name="password" id="pass"></p> <p>E-mail:<input type="text" class="input" name="email" id="email"></p> <p><input type="submit" name="submit" class="btn" value="提交注册"/></p> </form>
으로 설정되어 있습니다. 양식이 제출된 경우 post.php가 새로 고쳐지면 현재 'is_submit을 1로 설정하세요. , 그렇지 않으면 실행됩니다 코드
SESSION_START(); if (isset($_POST['submit'])) { if ($_SESSION['is_submit'] == '0') { $_SESSION['is_submit'] = '1'; echo "代码块,要做的事,代码...<a onclick='history.go(-1);' href='javascript:void(0)'>返回</a>"; } else { echo "请不用重复提交<a href='index.php'>PHP+SESSION防止表单重复提交</a>"; } }
<br>
[소개] 반복 제출은 우리가 사용하는 것 외에도 자주 접하는 문제입니다. Node.js를 사용하여 양식의 반복 제출을 방지할 수 있으며, PHP를 사용하여 반복 제출을 방지할 수도 있습니다. 예제 1 코드는 다음과 같습니다. 코드 복사
반복 제출은 개발 중에 자주 발생하는 문제입니다. js를 사용하여 양식의 반복 제출을 방지하는 것 외에도 PHP를 사용하여 반복 제출을 방지할 수도 있습니다.
예제 1
코드는 다음과 같습니다 | 코드 복사 |
/* |
<br>특정 원리
이를 방지하기 위해 세션 범위 변수 토큰이 사용됩니다.
1. 세션 열기:
session_start();
2. 양식 제출이 있는 경우
코드는 다음과 같습니다 | 코드를 복사하세요 |
if (isset($token) ) |
<br>토큰은 숨겨진 형태로 폼에 포함됩니다.
코드는 다음과 같습니다 | 코드를 복사하세요 |
<br>3. 양식을 반복적으로 제출하는 경우
코드는 다음과 같습니다 | 코드를 복사하세요 |
1.if ($_SESSION["token"] != $ token) { <br>2. // 아니요 여기서 중복 제출을 처리합니다. <br>3. // header("location:".$_SERVER['PHP_SELF']) <br>4.} else { <br>5. 제출은 여기에서 처리됩니다 <br>6. // echo "Submitted"; <br>1.$token = mt_rand(0,1000000 ) ; 2.$_SESSION['token'] = $token; |
<br>
<br>
<br>
此文链接:http://makaidong.com/kenshinobiy/22427_350409.html
<br>
转载请注明出处:PHP防止表单重复提交的解决方法
来源:马开东云搜索(电话:15110131480 微信:makaidongzi QQ:1130122167 微信公众号:makaidong-com)<br> 欢迎分享本文,转载请保留出处!
相关推荐:
위 내용은 반복적인 양식 제출을 방지하는 PHP 솔루션의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!