Rumah > pembangunan bahagian belakang > masalah PHP > Contoh untuk menerangkan cara melaksanakan penyegaran kod pengesahan dalam PHP

Contoh untuk menerangkan cara melaksanakan penyegaran kod pengesahan dalam PHP

PHPz
Lepaskan: 2023-04-10 13:59:58
asal
1602 orang telah melayarinya

Dengan perkembangan pesat Internet, isu keselamatan rangkaian menjadi semakin penting. Untuk melindungi privasi pengguna dan keselamatan data, banyak tapak web akan menambah fungsi kod pengesahan pada halaman log masuk atau pendaftaran pengguna. Fungsi pengesahan ini dilaksanakan dalam banyak bahasa pengaturcaraan Berikut akan memperkenalkan cara PHP melaksanakan penyegaran kod pengesahan.

1. Apakah itu kod pengesahan

Kod pengesahan ialah teknologi pengesahan manusia-komputer yang digunakan untuk menentukan sama ada pengguna adalah pengguna sebenar. Kod pengesahan biasa termasuk nombor, huruf dan grafik. Antaranya, kod pengesahan grafik adalah kaedah yang agak biasa, yang kebanyakannya memaparkan gambar yang dijana secara rawak kepada pengguna, membolehkan pengguna mengenal pasti kandungan dalam gambar yang dipaparkan dan memasukkannya ke dalam kotak input.

2. Cara memuat semula kod pengesahan dalam PHP

PHP boleh memuat semula kod pengesahan melalui perpustakaan GD. Pustaka GD ialah perpustakaan lukisan untuk PHP yang memudahkan untuk mencipta imej dan grafik.

Seterusnya, kami akan memperkenalkan cara melaksanakan fungsi penyegaran semula kod pengesahan melalui perpustakaan GD php.

  1. Pertama, kita perlu membuat kod pengesahan menggunakan perpustakaan GD.
<?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);
?>
Salin selepas log masuk
  1. Selepas membuat kod pengesahan, kami perlu memaparkan kod pengesahan pada halaman dan menyediakan fungsi menyegarkan semula kod pengesahan.
<!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>
Salin selepas log masuk

Dalam kod di atas, kami memuat semula kod pengesahan dengan mengklik butang "Muat Semula" untuk memanggil fungsi refreshCode(). Antaranya, nombor rawak ditambah pada fail php untuk mencapai kesan menyegarkan kod pengesahan.

3. Ringkasan

Melalui perpustakaan GD php, kami boleh mencipta imej dan grafik dengan mudah serta melaksanakan fungsi kod pengesahan. Artikel ini memperkenalkan kepada anda cara melaksanakan penyegaran kod pengesahan dalam PHP melalui contoh kod. Saya berharap pembaca dapat mempelajari sedikit pengetahuan dan kemahiran praktikal.

Atas ialah kandungan terperinci Contoh untuk menerangkan cara melaksanakan penyegaran kod pengesahan dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan