>백엔드 개발 >PHP 튜토리얼 >이메일 확인으로 가입 양식을 코딩하는 방법

이메일 확인으로 가입 양식을 코딩하는 방법

Jennifer Aniston
Jennifer Aniston원래의
2025-02-27 09:36:15278검색

How to Code a Signup Form With Email Confirmation 이 튜토리얼을 사용하면 사용자를 데이터베이스에 추가하는 사용자 등록 양식을 작성한 다음 사용자가 클릭하여 계정을 활성화 해야하는 확인 이메일을 보냅니다.

등록 양식을 처음부터 생성 이 섹션에서는 맞춤형 등록 양식을 처음부터 구축하는 단계별로 설명합니다. 먼저, 자습서를 따르도록 다운로드 할 수 있도록 모든 코드 파일을 첨부했습니다. 중요한 파일을 간단히 살펴 보겠습니다 :

: 이것은 등록 양식을 빌드하고 표시하는 데 사용되는 기본 파일입니다. 또한 양식의 제출을 ​​처리합니다.

: 확인 부분을 처리하는 데 사용됩니다.

: 이것은 HTML 이메일 본문을 작성하는 데 사용되는 HTML 파일 템플릿입니다.

    : 이것은 일반 텍스트 이메일 본문을 작성하는 데 사용되는 일반 텍스트 파일 템플릿입니다.
  • : 데이터베이스 연결 정보가 포함되어 있습니다. index.php
  • 나머지 파일은 보조 파일입니다.
  • MySQL 데이터베이스를 관리하고 새 데이터베이스를 생성하는 데 PhpmyAdmin 또는 귀하가 사용하는 모든 프로그램을 엽니 다. 당신은 당신이 원하는대로 이름을 지을 수 있지만, 나는 그것을 confirm.php라고 말할 것입니다. 이제 사용자 정보 및 확인 정보를 저장하는 스키마를 만들어야합니다. 이렇게하려면
  • 와 라는 두 개의 테이블을 만들 것입니다. signup_template.html 위의 MySQL 문은 라는 테이블을 생성합니다.
  • signup_template.txt
  • : 사용자의 고유 식별자로 사용되는 정수 시퀀스. 이는 로 정의되며, 이는 최대 11 비트 정수를 유지할 수 있음을 의미합니다.
  • inc/php/config.php : 각 사용자의 사용자 이름을 저장하는 문자열 열. 로 정의되므로 최대 50 자까지 절약 할 수 있습니다.
: 각 사용자의 해시 비밀번호를 저장하는 문자열 열. 이는 로 정의되며, 이는 최대 128 자까지 유지할 ​​수 있음을 의미합니다.

: 각 사용자의 이메일 주소를 저장하는 문자열 열. 이는 로 정의되므로 최대 250 자까지 절약 할 수 있습니다.

email_signup : 사용자 계정이 활성화되었는지 여부를 저장하는 이진 열. 이는 로 정의되며, 이는 바이트 값을 저장하고 0은 비활성을 의미하며 1은 활성화 된 것을 의미합니다. users confirm

테이블 :
<code class="language-sql">CREATE TABLE `users` (
  `id` int(11) NOT NULL auto_increment,
  `username` varchar(50) NOT NULL default '',
  `password` varchar(128) NOT NULL default '',
  `email` varchar(250) NOT NULL default '',
  `active` binary(1) NOT NULL default '0',
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;</code>
위의 MySQL 문은 라는 테이블을 생성합니다.

  • : 레코드를 확인하기위한 고유 식별자로 사용되는 정수 시퀀스. 이는 로 정의되며, 이는 최대 11 비트 정수를 유지할 수 있음을 의미합니다. id int(11) : 확인 레코드와 관련된 사용자 ID를 저장하는 문자열 열. 이는 로 정의되며, 이는 최대 128 자까지 유지할 ​​수 있음을 의미합니다.
  • : 사용자의 이메일 주소로 전송 된 확인 키를 저장하는 문자열 열. 이는 로 정의되며, 이는 최대 128 자까지 유지할 ​​수 있음을 의미합니다. userid varchar(128) mysqli
  • 를 사용하여 MySQL 데이터베이스에 연결하십시오 이 섹션에서는 MySQLI Extension을 사용하여 MySQL 데이터베이스에 연결하는 방법을 설명합니다.
  • 파일의 코드를 신속하게 추출하고 이해합시다. key varchar(128) 먼저, 우리는 새로운 mysqli 연결을 만듭니다. 그런 다음 연결이 성공했는지 확인합니다. 연결이 실패하면 오류 메시지가 표시되어 종료됩니다.
  • 제출 처리 양식
이 섹션에서는 양식 제출이 어떻게 작동하는지 설명합니다.

... (일부 코드는 여기에서 생략됩니다. 원본 텍스트의 코드 의이 부분은 의사 원리 목표와 길고 일관성이 없기 때문에 핵심 논리를 유지하십시오) ...

. 주요 논리는 다음과 같습니다. 사용자 입력을 안전하게 처리하고 (예 : SQL 주입을 방지하기 위해 함수를 사용), 사용자 입력이 완료되었는지 확인하고 데이터베이스에 사용자 데이터를 삽입하고 확인 키를 생성하고 확인 이메일을 보냅니다. 비밀번호는 MD5 기능을 사용하여 해시되며보다 안전한 암호화 방법을 사용하는 것이 좋습니다.

형식 확인

파일에서 중요한 코드 스 니펫을 추출하여 작동 방식을 이해해 보겠습니다.

inc/php/config.php 이 코드는 주로 URL 매개 변수와 일치하는 데이터베이스에 사서함 및 확인 키가 있는지 확인합니다. 존재하는 경우 사용자 상태를 활성화로 업데이트하고 확인 레코드를 삭제하십시오.

<code class="language-sql">CREATE TABLE `users` (
  `id` int(11) NOT NULL auto_increment,
  `username` varchar(50) NOT NULL default '',
  `password` varchar(128) NOT NULL default '',
  `email` varchar(250) NOT NULL default '',
  `active` binary(1) NOT NULL default '0',
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;</code>
결론 이 튜토리얼은 여기서 끝납니다.

이 튜토리얼에서는 여러 가지 측면을 다룹니다. 우리는 이메일 처리를위한 타사 스크립트를 다운로드하고 포함 시켰으며 간단한 양식 검증을 구현했으며 스타일의 이메일을위한 간단한 템플릿 시스템을 만들었습니다. MySQL에 익숙하지 않은 경우 가장 일반적인 기능 중 세 가지를 다루었으므로보다 고급 튜토리얼을 쉽게 완료 할 수 있어야합니다.

위 내용은 이메일 확인으로 가입 양식을 코딩하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.