当前位置: 首页 > news >正文

PHP验证码生成与测试 - 详解

PHP验证码生成与测试

<?php
session_start();
require_once 'Captcha.php';
$message = '';
$success = false;
// 检查表单提交
if ($_SERVER['REQUEST_METHOD'] === 'POST' &&
isset($_POST['captcha'])) {
if (Captcha::validate($_POST['captcha'])) {
$message = '验证码正确!';
$success = true;
} else {
$message = '验证码错误,请重试!';
}
}
?>
<
!DOCTYPE html>
<html lang="zh-CN"><head><meta charset="UTF-8"><title>验证码测试</title><style>body {font-family: Arial, sans-serif;max-width: 500px;margin: 50px auto;padding: 20px;text-align: center;}.captcha-img {margin: 20px 0;border: 1px solid #ddd;cursor: pointer;height: 50px;/* 固定高度避免布局跳动 */}.message {padding: 10px;margin: 10px 0;border-radius: 4px;}.success {background-color: #dff0d8;color: #3c763d;}.error {background-color: #f2dede;color: #a94442;}</style></head><body><h1>验证码测试</h1><?php if ($message): ?><div class="message <?= $success ? 'success' : 'error' ?>"><?= htmlspecialchars($message) ?></div><?php endif;?><form method="POST" action=""><div><!-- 只保留一个验证码图片元素 --><img id="captcha-image" class="captcha-img"src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="alt="验证码" title="点击刷新验证码"></div><div><input type="text" name="captcha" placeholder="请输入验证码" required></div><div><button type="submit">提交验证</button><button type="button" id="refresh-btn">刷新验证码</button></div></form><script>const captchaImage = document.getElementById('captcha-image');const refreshBtn = document.getElementById('refresh-btn');// 获取验证码Base64async function refreshCaptcha() {try {const timestamp = Date.now();const response = await fetch(`generate_captcha.php?t=${timestamp}`);const blob = await response.blob();return new Promise((resolve) =>{const reader = new FileReader();reader.onload = () =>{captchaImage.src = reader.result;};reader.readAsDataURL(blob);});} catch (error) {console.error('刷新验证码失败:', error);}}// 初始加载和点击刷新refreshCaptcha();captchaImage.addEventListener('click', refreshCaptcha);refreshBtn.addEventListener('click', refreshCaptcha);</script></body></html>

在这里插入图片描述
源码资源:https://download.csdn.net/download/weixin_43050480/91998494

http://www.jsqmd.com/news/19669/

相关文章:

  • 集合中的贡献法
  • 广州治疗青少年心理医院口碑榜:TOP3医疗机构专业实力深度解析
  • 详细介绍:高通平台WiFi学习-- WLAN 固件在modem中加载过程和调试方法
  • 人狗大战Ⅱ
  • 不仅可以播放mp3音频文件,也可以播放视频文件(如 .mp4、.avi 等),但应该与QVideoWidget 配合使用以显示视频画面。
  • 【IEEE出版、往届会后3个月检索】2025 第九届控制工程与先进算法国际论坛(IWCEAA 2025)
  • 设计模式(C++)详解——命令模式(1) - 指南
  • 整装定制家具生产厂家口碑榜:TOP3企业智能制造实力深度解析
  • 实用指南:阿里云安装Docker
  • 给大家分享三个特别好用的在线工具,可以为你的工作节省很多时间
  • 2025 年振动筛源头厂家最新推荐榜单:权威甄选实验 / 防爆 / 精细筛分设备,揭秘靠谱供应企业
  • 2025 年最新推荐摇摆筛厂家榜单:聚焦实力雄厚供货稳定品牌,助力企业精准选购筛分设备方形/圆形/石英砂/砂石/精细摇摆筛厂家推荐
  • 江苏国际陆运物流公司口碑榜:TOP7企业服务能力全景解析
  • 高性能超低功耗蓝牙电子价签方案 OM6626 NRF52832
  • 软工第三次作业-结对项目
  • 2025 年中国校服厂家最新推荐榜单权威发布!深度解析优质品牌核心竞争力与选择指南
  • 【IEEE出版 | EI检索稳定】第五届IEEE能源工程与电力系统国际学术会议(IEEE-EEPS 2025)
  • 2025 年同步带厂家推荐:深入剖析浙江三星胶带有限公司,探寻橡胶带行业的优质之选
  • 深夜的调试界面,藏着微信生态的黄金密码
  • 【题解】洛谷 P4096 [HEOI2013] Eden 的博弈树 | 更简洁的一种做法
  • 2025年丝杆升降机厂家最新行业推荐:联动丝杆升降机/螺旋丝杆升降机/蜗杆丝杆升降机/蜗轮丝杆升降机/三家兼顾工艺与适配性的实力厂家推荐
  • 智能配电变压器生产厂家口碑榜:基于技术实力、客户服务及市场反馈的专业评估
  • 力扣300.最长递增子序列(经典dp)力扣375.猜数字II力扣.329矩阵最长的递增子序列力扣.33搜索旋转排序数组 - 详解
  • Meta DINO系列论文浅读
  • qemu模拟嵌入式开发板运行linux
  • 2025年知名的工业铝型材深加工加工厂
  • Apache Tika严重XXE漏洞分析与修复方案
  • 防火密封胶条生产厂家口碑榜:基于技术实力、客户服务及市场反馈的专业评估
  • SAP ALV小数位去除
  • 【WCH蓝牙系列芯片】-基于CH585开发板——BLE蓝牙广播----扩展广播应用