현재 위치: > 최신 기사 목록> PHP에 등록 할 때 이메일 확인 이메일 보내기에 대한 튜토리얼 전체

PHP에 등록 할 때 이메일 확인 이메일 보내기에 대한 튜토리얼 전체

M66 2025-08-04

PHP에 사용자를 등록 할 때 확인 이메일을 보내는 단계를 구현하는 단계

사용자 등록 기능은 현대 웹 사이트의 필수 부분입니다. 사용자가 제공 한 이메일 주소가 유효하고 사실인지 확인하기 위해 일반적으로 확인 이메일을 보내면 사용자의 신원이 확인됩니다. 이 기사는 PHP 로이 기능을 구현하는 방법을 소개하고 개발자가 신속하게 시작할 수 있도록 실용적인 코드 예제를 제공합니다.

SMTP 서버를 구성하십시오

메일 전송은 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 프로젝트에 등록 할 때 이메일 확인 이메일을 보내는 전체 기능을 실현할 수 있습니다. 이는 사용자 등록의 보안을 향상시킬뿐만 아니라 잘못된 이메일 등록을 효과적으로 피하고 웹 사이트의 관리 효율성 및 사용자 경험을 향상시킵니다.