Home  >  Article  >  Backend Development  >  Examples to explain how to implement verification code refresh in PHP

Examples to explain how to implement verification code refresh in PHP

PHPz
PHPzOriginal
2023-04-10 09:41:261510browse

With the rapid development of the Internet, network security issues are becoming more and more important. In order to protect user privacy and data security, many websites will add verification code functions to user login or registration pages. This verification function is implemented in many programming languages. The following will introduce how PHP implements verification code refresh.

1. What is verification code

Verification code is a human-machine verification technology used to determine whether the user is a real user. Common verification codes include numbers, letters, and graphics. Among them, graphic verification code is a relatively common method, which mainly displays a randomly generated picture to the user, allowing the user to identify the content in the displayed picture and enter it in the input box.

2. How to refresh the verification code in PHP

PHP can implement the verification code refresh function through the GD library. The GD library is a drawing library for PHP that makes it easy to create images and graphics.

Next, we will introduce how to implement the verification code refresh function through the GD library of php.

  1. First, we need to use the GD library to create a verification code.
<?php
session_start();

//创建画布
$width = 120;
$height = 45;
$img = imagecreate($width, $height);

//设置画布背景色
$bg_color = imagecolorallocate($img, 255, 255, 255);

//设置字体颜色
$text_color = imagecolorallocate($img, 0, 0, 0);

//绘制验证码
$code = "";
$length = 4; //验证码字符数
for ($i = 0; $i < $length; $i++) {
    $rand = rand(0, 9); //生成随机数字
    $code .= $rand; //将随机数字拼接为验证码字符串
    $x = floor($width / $length) * $i + 5; //计算字符x轴坐标
    $y = rand(0, $height - 15); //生成随机y轴坐标
    imagestring($img, 5, $x, $y, $rand, $text_color); //绘制字符
}

//将验证码存入session
$_SESSION[&#39;code&#39;] = $code;

//设置响应头,输出验证码图片
header("Content-type:image/png");
imagepng($img);

//释放资源
imagedestroy($img);
?>
  1. After creating the verification code, we need to display the verification code on the page and provide the function of refreshing the verification code.
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>验证码</title>
</head>
<body>
    <h2>验证码:</h2>
    <img id="code_img" src="code.php">
    <a href="javascript:void(0);" onclick="refreshCode()">刷新</a>
    <script>
        function refreshCode() {
            document.getElementById("code_img").src = "code.php?" + Math.random(); //为验证码url添加随机数实现刷新
        }
    </script>
</body>
</html>

In the above code, we call the refreshCode() function by clicking the "Refresh" button to refresh the verification code. Among them, a random number is added to the php file to achieve the effect of refreshing the verification code.

3. Summary

Through PHP’s GD library, we can easily create images and graphics and implement the verification code function. This article introduces to you how to implement verification code refresh in PHP through code examples. I hope readers can learn some practical knowledge and skills.

The above is the detailed content of Examples to explain how to implement verification code refresh in PHP. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn