<form action="test.php" method="POST">
HTML CODE
</form>
<button type="submit" name="test" value="1">Buy</button>
---> test.php
if(isset($_POST['test'])) {
PHP CODE
}
我已经在该html表单上方包含了test.php,但是当我在页面运行php代码并再次加载整个页面之前一次又一次单击Submit时,它运行php代码的次数与我单击的次数相同
我如何确保一个人不能一次又一次地滥用“提交”按钮来一次又一次地运行php代码?我只想考虑第一次点击。
有人可以帮忙吗
答案 0 :(得分:0)
好的方法是包括某种验证码。我个人更喜欢Google(https://www.google.com/recaptcha/intro/v3beta.html)的Recaptcha
它根本不会显示,您可以针对任何传入请求进行验证。
要开始使用,请在您的html中嵌入以下JS:
<script src='https://www.google.com/recaptcha/api.js'></script>
然后替换您的提交按钮:
<button
class="g-recaptcha"
data-sitekey="YOUR_PUBLIC_SITE_KEY"
data-callback="YourOnSubmitFn">
Buy
</button>
最后剩下的就是从php检查代码是否正确:)
发布带有秘密,响应和remoteip的'https://www.google.com/recaptcha/api/siteverify'->然后允许用户使用该功能,否则只需中止