我在PHP表单中使用验证码图像验证程序。表单使用cookie来检查用户输入的验证码。除了使用cookie之外,还有其他方法吗?
答案 0 :(得分:4)
在这种情况下,Cookie是一个非常糟糕的主意。相反,您应该在$_SESSION
PHP超全局中使用变量集。在验证码输入页面的顶部,添加此(最小版本):
session_start();
$_SESSION['captchaCode'] = /* whatever */
可以找到 session_start()
文档here。
然后,在提交表单时,检查表单提交的值是否与$_SESSION['captchaCode']
中的值相同:
session_start();
if($_SESSION['captchaCode'] == $_POST['captchaCode'])
{
// Do interesting things
}
请记住,这是一种非常简单,通用的方式。如果你正在使用reCAPTCHA或Securimg,那么他们将有自己的方法来验证他们生成的验证码。
答案 1 :(得分:0)
我不使用cookies,你可以看看他们输入的内容是否与你在captcha条目数据库中的内容直接匹配;那就是你有一个可能的验证码数据库吗?
答案 2 :(得分:0)
这是一个非常易于使用和设置的脚本。此脚本只是创建图像,但并不难加入验证。您可以下载脚本here以验证captach图像使用php或javascript来确保post值等于$ _SESSION ['security_number']并完成。