사용자 등록 기능은 현대 웹 사이트의 필수 부분입니다. 사용자가 제공 한 이메일 주소가 유효하고 사실인지 확인하기 위해 일반적으로 확인 이메일을 보내면 사용자의 신원이 확인됩니다. 이 기사는 PHP 로이 기능을 구현하는 방법을 소개하고 개발자가 신속하게 시작할 수 있도록 실용적인 코드 예제를 제공합니다.
메일 전송은 SMTP 서버에 따라 다릅니다. Phpmailer 라이브러리를 사용하여 우편 발송을 완료하는 것이 좋습니다. 먼저 작곡가를 통해 phpmailer를 설치하십시오.
작곡가는 Phpmailer/phpmailer가 필요합니다
설치가 완료되면 자동로드 파일을 프로젝트에 소개합니다.
'공급 업체/autoload.php'가 필요합니다.
다음으로 서버 주소, 포트, 사용자 이름 및 비밀번호 등을 포함한 SMTP 서버 매개 변수를 구성하며 특정 구성은 사용 된 메일 서비스 제공 업체를 기반으로합니다.
사용자가 등록 양식을 제출하면 먼저 사용자 이름 및 이메일과 같이 사용자가 입력 한 정보를받습니다.
$ username = $ _post [ 'username']; $ email = $ _post [ '이메일'];
후속 사서함 확인을 위해 고유 한 확인 식별자를 생성하십시오.
$ token = bin2Hex (random_bytes (16));
검증 중 검색 및 업데이트를 용이하게하기 위해 데이터베이스에 사용자 정보 및 확인 식별자를 저장하십시오.
확인 식별자가 포함 된 링크를 빌드하면 클릭 한 후 사용자가 이메일 확인을 완료 할 수 있습니다.
$ verificationLink = "http://yourdomain.com/verify.php?token=". $ 토큰;
phpmailer를 사용하여 이메일 본문에 확인 링크와 함께 이메일을 보냅니다.
$ mail = 새로운 phpmailer \ phpmailer \ phpmailer (); $ mail-> issmtp (); $ mail-> host = 'smtp.example.com'; $ mail-> port = 587; $ mail-> smtpsecure = 'tls'; $ mail-> smtpauth = true; $ mail-> username = 'username@example.com'; $ mail-> password = 'password'; $ mail-> setfrom ('from@example.com ','귀하의 사이트 '); $ mail-> addAddress ($ email, $ username); $ mail-> subject = '이메일 주소를 확인하십시오'; $ mail-> body = '다음 링크를 클릭하여 이메일 주소를 확인하십시오 :'. $ verificationLink; if (! $ mail-> send ()) { Echo '메일 배송이 실패했습니다. ';; Echo '오류 메시지 :'. $ mail-> errorinfo; } 또 다른 { echo '확인 이메일이 전송되었습니다. 확인하십시오. ';; }
사용자가 확인 링크를 클릭 한 후 확인 페이지 (verify.php)는 URL에서 토큰 매개 변수를 얻어 확인 프로세스를 완료합니다.
$ token = $ _get [ 'Token'];
데이터베이스 쿼리 토큰에 따라 해당 사용자를 확인하고 확인할 이메일 확인 상태를 업데이트하고 확인 결과를 사용자에게 표시합니다.
위의 단계를 통해 개발자는 사용자가 PHP 프로젝트에 등록 할 때 이메일 확인 이메일을 보내는 전체 기능을 실현할 수 있습니다. 이는 사용자 등록의 보안을 향상시킬뿐만 아니라 잘못된 이메일 등록을 효과적으로 피하고 웹 사이트의 관리 효율성 및 사용자 경험을 향상시킵니다.