jublonet/catcha

使用 CAPTCHA 捕捉垃圾邮件发送者。

1.0.1 2013-05-22 20:54 UTC

This package is not auto-updated.

Last update: 2024-09-25 00:49:01 UTC


README

使用 CAPTCHA 捕捉垃圾邮件发送者。

版权(C)2013-2014 Jublo IT Solutions <support@jublo.net>

本程序是自由软件:您可以按照自由软件基金会发布的GNU通用公共许可证的条款重新分发和/或修改它,许可证版本为3,或者(根据您的选择)任何后续版本。

本程序的分发是希望它会有用,但没有任何保证;甚至没有对适销性或特定用途适用性的暗示保证。有关更多信息,请参阅GNU通用公共许可证。

您应该已经随本程序收到了GNU通用公共许可证的一个副本。如果没有,请参阅https://gnu.ac.cn/licenses/

请在您的PHP环境中启用GD扩展。

入门

  1. 生成挑战
require_once 'catcha.php';

$catcha = new Catcha;
$catcha->outputImage();
  1. 存储Catcha对象
$_SESSION['catcha'] = $catcha;
  1. 用户输入解决方案后,恢复对象
$catcha = $_SESSION['catcha'];
  1. 检查输入的结果是否正确
$entered_result = -1;
if (isset($_POST['your_field_name'])) {
    $entered_result = intval($_POST['your_field_name']);
}
$catcha_solved = $catcha->isCorrectResult($entered_result);

适应您的需求

设置自定义挑战画布图像大小

默认的画布大小为100 x 25像素。自定义大小

$catcha->setImageSize($desired_width, $desired_height);

使用自定义字体

默认情况下,Catcha使用SIL开放字体许可证版本1.1下许可的Averia Light字体(http://scripts.sil.org/OFL)。您也可以使用自定义的True Type字体 (*.ttf)

$catcha->setImageFont($path_to_font);

以不同的颜色绘制画布

支持的颜色代码包括(大小写均可)

  • #ffff00
  • ffff00
  • ff0
$catcha->setImageColorBackground('#ffff00');

以不同的颜色写方程

$catcha->setImageColorForeground('#ff0000');

生成新的挑战并丢弃旧的挑战

$catcha->newChallenge();

获取不发送到浏览器的原始图像数据

原始图像数据是二进制JPEG格式,质量为80。

$image_data = $catcha->getImage();