인간-기계 인증코드는 일반적으로 사용되는 인증코드 형태로, 악성 로봇 공격 및 악성 등록을 효과적으로 방지할 수 있습니다. 서버 측 언어로서 PHP는 인간-기계 확인 코드 기능을 구현하는 데 매우 적합합니다. 이번 글에서는 PHP를 이용하여 인간-기계 검증 코드를 구현하는 방법을 소개하겠습니다.
다음은 인증코드 이미지 생성을 위한 코드 예시입니다.
<?php session_start(); $code = rand(1000, 9999); $_SESSION["code"] = $code; $width = 100; $height = 50; $image = imagecreatetruecolor($width, $height); $textColor = imagecolorallocate($image, 0, 0, 0); //设置文本颜色 $bgColor = imagecolorallocate($image, 255, 255, 255); //设置背景颜色 imagefilledrectangle($image, 0, 0, $width, $height, $bgColor); //绘制矩形背景 //绘制验证码字符串 $font = 'arial.ttf'; //字体 $fontSize = 24; //字体大小 $x = 20; //x轴位置 $y = 30; //y轴位置 for ($i = 0; $i < 4; $i++) { $char = substr(str_shuffle("ABCDEFGHJKMNPQRSTUVWXYZ23456789"), 0, 1); imagettftext($image, $fontSize, rand(-15, 15), $x, $y, $textColor, $font, $char); $x += 20; } header('Content-type: image/png'); imagepng($image); imagedestroy($image); ?>
이 코드는 서버 측에서 인증코드 이미지를 생성하고 이를 브라우저에 출력하여 표시합니다.
다음은 사용자 입력을 확인하는 코드 예입니다.
<?php session_start(); if($_POST["code"] != $_SESSION["code"]) { echo "验证码输入错误"; } else { echo "验证码输入正确"; } ?>
이 코드는 사용자가 제출한 인증 코드가 세션에 저장된 인증 코드와 동일한지 확인하는 코드입니다. 동일하지 않으면 오류 메시지가 출력됩니다. 동일하면 사용자 입력이 올바른 것입니다.
다음은 인간-기계 확인 코드를 양식에 삽입하는 코드 예제입니다.
<form method="post" action="verify.php"> <p>用户名:</p> <input type="text" name="username"> <p>密码:</p> <input type="password" name="password"> <p>验证码:</p> <input type="text" name="code"> <img src="code.php" alt="验证码"> <input type="submit" value="提交"> </form>
이 코드는 양식에 이미지를 추가하여 확인 코드를 표시합니다. 사용자는 양식을 제출하려면 이미지에 표시된 인증 코드를 입력해야 합니다. 제출 버튼을 클릭하면 양식이 확인 스크립트 코드로 이동하여 확인을 수행합니다.
요약
이 글에서는 PHP를 사용하여 인간-기계 인증 코드를 구현하는 방법을 소개합니다. 인증코드 이미지를 생성하여 Session에 저장함으로써 악의적인 공격 및 등록을 효과적으로 방지할 수 있습니다. 양식에 인간-기계 확인 코드를 삽입하면 웹사이트 보안과 사용자 경험을 효과적으로 향상시킬 수 있습니다.
위 내용은 PHP를 사용하여 인간-기계 확인 코드를 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!