我确信有一个解决方案,我已经尝试用谷歌搜索我要找的内容,但还没有答案,所以这是我的小问题,我有一个带有验证码的表单,验证码把它放在原始字符串中在
$_SESSION['PASSWORD']
中,所以我想验证用户是否粘贴了与 $_SESSION['PASSWORD']
中相同的字符串。
好吧,我想我在这里需要一点ajax,在提交表单之前,我必须使用ajax检查
$_SESSION['PASSWORD']
并将其与用户磁带进行比较
请提供任何帮助,“我不是 ajax 专业人士”,如果你能让我变得非常简单,那就太好了。
HTML
<input type="text" id="captcha" name="captcha"> <!-- This is your captcha input -->
JQuery:
$.get('verify.php', { captcha: $('#captcha').val() }, function(data){
if(data === 'OK'); //Validation is ok
else; //Validation is wrong
});
PHP(验证.php):
<?php
session_start();
if($_GET['captcha'] === $_SESSION['password']) echo 'OK';
else echo 'ERROR';
exit();
?>
创建一个新的 php 文件并对该文件执行 ajax 请求。然后检查您是否得到正确或错误的回复。
session_start();
if($_SESSION['PASSWORD'] == $_POST['PASSWORD']) {
echo "true";
}
echo "false";
注意:这不太安全。 最好在提交表单时检查一下(假设这就是您使用验证码的原因)。使用 ajax 或正常提交表单的方式发布表单并不重要。如果您只使用 ajax 检查验证码,那么仍然可以使用自定义 http 请求发布数据,或者通过禁用 javascript 更简单(大多数机器人都会这样做)。