php编写个4个空格的验证码输入满4位后如果不等于1314则提示错误后清空等待重新输入
以下是一个简单的实现:
<?php
session_start();
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$code = $_POST['code'];
if ($code === '1314') {
echo '验证通过!';
// 清空验证码
unset($_SESSION['code']);
} else {
echo '验证码错误,请重新输入!';
}
} else {
// 生成随机的验证码
if (!isset($_SESSION['code'])) {
$_SESSION['code'] = str_repeat(' ', 4);
}
$code = $_SESSION['code'];
// 输出表单
echo '<form method="post">';
for ($i = 0; $i < 4; $i++) {
echo '<input type="text" name="code[]" value="' . $code[$i] . '" maxlength="1" size="1">';
}
echo '<button type="submit">提交</button>';
echo '</form>';
// 检查是否输入完整的验证码
if (!in_array(' ', $code)) {
echo '请输入验证码!';
// 清空验证码
unset($_SESSION['code']);
}
}
?>
这个实现使用了 PHP 的 Session 功能来保存验证码,同时使用了表单和 POST 请求来接收用户的输入。在生成验证码时,我们使用了 str_repeat 函数来生成四个空格。在输出表单时,我们使用了一个循环来生成四个文本框,每个文本框的 name 属性设置为 code[],这样提交表单时就可以将四个字符作为一个数组一起提交。在检查验证码是否输入完整时,我们使用了 in_array 函数来检查数组中是否存在空格字符。如果验证码输入完整,但是不等于 1314,则提示错误信息并清空验证码,等待用户重新输入。如果用户输入正确的验证码,则提示验证通过,并清空验证码
原文地址: https://www.cveoy.top/t/topic/edRk 著作权归作者所有。请勿转载和采集!