【已解决】PHP带验证码的用户表单



以下是一个使用PHP和验证码的用户表单示例:

 

HTML代码:

 

 

 

 

提示: 该部分为隐藏内容,需要输入密码才能浏览。 点此获取密码点此输入密码

 



 

 

 

验证码

 



 

 

 

PHP代码(captcha.php):

 

 

session_start();

 

$code = rand(1000,9999);

 

$_SESSION['captcha'] = $code;

 

$im = imagecreatetruecolor(60, 20);

 

$bg_color = imagecolorallocate($im, 255, 255, 255);

 

$text_color = imagecolorallocate($im, 0, 0, 0);

 

imagefill($im, 0, 0, $bg_color);

 

imagestring($im, 5, 10, 3, $code, $text_color);

 

header("Cache-Control: no-cache, must-revalidate");

 

header('Content-type: image/png');

 

imagepng($im);

 

imagedestroy($im);

 

?>

 

PHP代码(submit.php):

 

 

session_start();

 

if ($_POST['captcha'] = $_SESSION['captcha']) {

 

echo "验证码错误";

 

exit;

 

}

 

$username = $_POST['username'];

 

$password = $_POST['password'];

 

// 这里可以将用户名和密码插入到数据库中

 

echo "注册成功";

 

?>

 

首先,我们在HTML表单中添加了一个名为“captcha”的输入框,用于输入验证码。然后,我们在表单中使用了一个名为“captcha.php”的PHP脚本来生成验证码图像。该脚本使用了PHP GD库来创建图像,并将验证码存储在会话变量$_SESSION['captcha']中。最后,我们在表单中使用了一个标签来显示验证码图像。

 

在PHP脚本submit.php中,我们首先检查用户输入的验证码是否与会话变量中的验证码相同。如果不同,我们将显示一个错误消息并退出脚本。否则,我们将获取用户名和密码,并将它们插入到数据库中(这里省略了数据库插入的代码)。最后,我们将显示一个成功消息。

 

 

(2023-05-24 10:04:15)