Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP-我如何进行自己的人工验证?_Php_Captcha - Fatal编程技术网

PHP-我如何进行自己的人工验证?

PHP-我如何进行自己的人工验证?,php,captcha,Php,Captcha,我想制作自己的php脚本,用于人工验证。就像一系列简单的数字/字母(captcha),没有什么特别的 建议?提示?需要记住的事情?这个问题在一个简单的谷歌搜索中得到了广泛的关注 您可以使用教程示例作为参考:您可以使用诸如recaptcha之类的验证码服务来检查是否有人 或者使用图像库创建自己的图像,并将答案存储在数据库中,并给出图像文件的名称(无法追溯到单词),您可能需要将单词模糊化,因为机器人可以使用ocr 我看到的另一种新颖的方法是有人使用像这样的ascii艺术验证码 您可以使用GD库来实现

我想制作自己的php脚本,用于人工验证。就像一系列简单的数字/字母(captcha),没有什么特别的


建议?提示?需要记住的事情?

这个问题在一个简单的谷歌搜索中得到了广泛的关注


您可以使用教程示例作为参考:

您可以使用诸如recaptcha之类的验证码服务来检查是否有人

或者使用图像库创建自己的图像,并将答案存储在数据库中,并给出图像文件的名称(无法追溯到单词),您可能需要将单词模糊化,因为机器人可以使用ocr

我看到的另一种新颖的方法是有人使用像这样的ascii艺术验证码


您可以使用GD库来实现这一点。这里可以举一个例子:

我保存了一个问题列表及其相关的服务器端答案。当为带有问题的表单生成HTML时,我将随机选择的问题添加到表单中,并将问题索引(来自问题列表)存储在用户会话中。然后,当答案发布后,我可以简单地用会话中的索引检查答案

值得一提的是:

  • 问题应该很简单,应该很简单
  • 不含糊,只有一个
  • 可能的答案用户可以在任何情况下输入答案

同样值得在表单上添加一个“为什么我们要问这个?”的内容,因为一些用户可能会对为什么会有这个问题感到困惑。

一个例子:为什么?您的案例有什么不同之处使标准解决方案不适用?请务必记住,自制的验证码很少提供复杂解决方案的OCR阻力(旋转的谷歌验证码)。它们只适用于小型站点和一段时间,因此可以接受学习实现这种功能。Smashing杂志最近发表了一篇关于capatchas的精彩文章:Recaptcha不仅有效,而且有助于图书数字化。这比自己写的东西更有意义,而且更好。事实上,这可能是一个比验证码更好的解决方案:我只是听说了“OCS”和那些麻烦。。。。我不认为问题清单会被破解:)