javascript - 无需外部 API 调用的验证码

标签 javascript php html captcha

我目前正在与一些 friend 一起参与一个非常古老的项目,该项目已经好几个月没用了。我将它托管在我的提供商的免费托管服务上,因为没有人愿意为域和托管付费。

这就是问题所在:我有一个联系表,我想用 Google 的 reCaptcha 来保护它。我知道如何让它发挥作用,我以前做过。不幸的是,我的提供商禁止调用任何外部资源...

此外,我无法访问服务器,所以我无法添加任何库或编辑设置(这太容易了......)。该主机上的 PHP 版本是 5.1.3(请不要大喊大叫,我知道...)。

那么问题来了:有没有不依赖外部资源、不需要安装库的验证码方案?

谢谢!

最佳答案

你可以使用 simple-php-captcha

它允许使用自定义图案和字体,使用起来非常简单:

Demo 和使用可以在here 找到。以下是直接来自上述链接的摘要:

<?php
session_start();
include("simple-php-captcha.php");
$_SESSION['captcha'] = simple_php_captcha();
?>

显示 CAPTCHA 图像,使用 <img> 作为 $_SESSION['captcha']['image_src'] 属性创建一个 HTML src:

要在下一个页面加载时(或在 AJAX 请求中)验证 CAPTCHA 值,请针对 $_SESSION['captcha']['code'] 进行测试。您可以使用 strtolower()strtoupper() 来执行不区分大小写的匹配。

配置:

$_SESSION['captcha'] = simple_php_captcha( array(
    'min_length' => 5,
    'max_length' => 5,
    'backgrounds' => array(image.png', ...),
    'fonts' => array('font.ttf', ...),
    'characters' => 'ABCDEFGHJKLMNPRSTUVWXYZabcdefghjkmnprstuvwxyz23456789',
    'min_font_size' => 28,
    'max_font_size' => 28,
    'color' => '#666',
    'angle_min' => 0,
    'angle_max' => 10,
    'shadow' => true,
    'shadow_color' => '#fff',
    'shadow_offset_x' => -1,
    'shadow_offset_y' => 1
));

关于javascript - 无需外部 API 调用的验证码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30241176/

相关文章:

javascript - JavaScript 中的全局变量到局部变量

javascript - javascript中的图像打包算法

php - 如何区分一张表中的三列并用PHP显示

javascript - setTimeout 可以返回 0 作为 id 吗?

javascript - "Autocomplete is not a function"JavaScript错误

javascript - img src 属性中文件名的正则表达式

PHP OAuth 1.0 库,用于处理 api key / secret 对和端点(请求、授权和访问)

PHP 正则表达式 许多匹配项

html - 如何在 css 中将 <div> 水平居中?

javascript - 如何使用 Jquery 在现有参数上添加值?