PHP 이메일 확인 기능

巴扎黑
풀어 주다: 2016-11-24 11:46:45
원래의
1187명이 탐색했습니다.

1단계: 데이터베이스 생성

다음 데이터베이스를 복사하여 메모장에 붙여넣은 후 PHPMyAdmin에서 새 데이터베이스를 생성하고 다음 데이터를 가져옵니다.

– 테이블 구조 `registered_members`

CREATE TABLE `registered_members` (
`id` int(4) NOT NULL auto_increment,
`name` varchar(65) NOT NULL 기본값 ”,
`email` varchar(65) NOT NULL 기본값 ”,
`password` varchar(65) NOT NULL 기본값 ”,
`country` varchar(65) NOT NULL 기본값 ”,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;


– `registered_members` 테이블의 데이터 내보내기

–—————————————————–

– 테이블 구조 `temp_members_db`

CREATE TABLE `temp_members_db` (
`confirm_code` varchar(65) NOT NULL 기본값 ”,
`name` varchar(65) NOT NULL 기본값 ”,
`email` varchar(65) NOT NULL 기본값 ”,
` 비밀번호` varchar(15) NOT NULL 기본값 ”,
`country` varchar(65) NOT NULL 기본값 ”
) ENGINE=MyISAM DEFAULT CHARSET=latin1;


– 테이블 내보내기 데이터 `temp_members_db`

2단계: 데이터베이스 연결 설정

다음 코드를 텍스트 컴파일러에 복사하고 이름을 지정하십시오: config.php

< ;?php

$host=”호스트 이름”; // 호스트 이름
$username=”사용자 이름”; // MySQL 사용자 이름
$password=”비밀번호”; >$db_name=”DB 이름”; // 데이터베이스 이름

//서버에 연결하고 데이터베이스를 선택합니다.

mysql_connect(“$host”, “$username”, “ $password”)or die ("서버에 연결할 수 없습니다");
mysql_select_db("$db_name")or die("DB를 선택할 수 없습니다");

?>

3단계: 등록 페이지

다음 코드를 텍스트 편집기에 복사하고 이름을 지정하세요: signup.php


















< ;td>:
< ;td><입력 ID=”이메일” 이름=”이메일” 크기=”30″ 유형=”텍스트” />














등록< ;/strong>
사용자 이름 :
이메일
비밀번호:<입력 id= ”비밀번호” 이름=”비밀번호” 크기=”30″ 유형 =”비밀번호” />
국가< ;/td>
:
<입력 ID=”국가” 이름=”국가” 크기=”30″ 유형=”텍스트” />
;<입력 이름=”재설정” 유형=”재설정” 값=”재설정” />


4단계: 데이터에 데이터 삽입 및 이메일로 보내기

다음 코드를 텍스트 편집기에 복사하고 이름을 signup_ac.php

include('config.php');


// 테이블 이름

$tbl_name=temp_members_db;


// 무작위 확인 코드

$confirm_code=md5(uniqid(rand ()));


// 양식에서 보낸 값

$name=$_POST['name'];

$email=$_POST['email'];
$country=$_POST['국가'];

// 데이터베이스에 데이터 삽입

$sql=”INSERT INTO $tbl_name (confirm_code, 이름, 이메일, 비밀번호, 국가)VALUES('$confirm_code ', '$name', '$email', '$password', '$country')";

$result=mysql_query($sql );

// 데이터베이스에 데이터가 성공적으로 삽입된 경우 , 이메일로 확인 링크 보내기

if($result){


// —————- 메일 양식 보내기 —— ———-

// 이메일 보내기 ...

$to=$email;


// 제목

$subject=”여기에 확인 링크가 있습니다”;

// 보낸 사람
$header=”from: 이름 <이메일>”;

// 메시지
$message=”확인 링크 rn”;
$message.=”계정을 활성화하려면 이 링크를 클릭하세요”;
$message.=”http://www.yourweb.com/confirmation.php?passkey=$confirm_code”;

// 이메일 보내기
$sentmail = mail($to,$subject,$message,$header);

}

// 찾을 수 없는 경우
else {
echo “우리 데이터베이스에서 귀하의 이메일을 찾을 수 없습니다.”;
}

// 귀하의 이메일이 성공적으로 전송된 경우
if($sentmail){
echo “귀하의 확인 링크가 다음으로 전송되었습니다. 귀하의 이메일 주소.”;
}
else {
echo “귀하의 이메일 주소로 확인 링크를 보낼 수 없습니다.”;
}

?>

第五步:验证

请把下면 代码复 제조사의 文本编辑器里face,并命name:confirmation.php

include('config.php ');

// 링크에서 받은 비밀번호
$passkey=$_GET['passkey'];

$tbl_name1=”temp_members_db”;

/ / 이 패스키와 일치하는 행이 있는 테이블에서 데이터를 검색합니다
$sql1=”SELECT * FROM $tbl_name1 WHERE verify_code ='$passkey'”;
$result1=mysql_query($sql1);

// 쿼리에 성공한 경우
if($result1){

// 이 패스키가 있는 행 수 계산
$count=mysql_num_rows($result1);

// if 데이터베이스에서 이 암호 키를 찾았습니다. "temp_members_db" 테이블에서 데이터를 검색하세요
if($count==1){

$rows=mysql_fetch_array($result1);
$name=$rows[ '이름'];
$email=$rows['email'];
$password=$rows['password'];
$country=$rows['country'];

$tbl_name2=”registered_members”;

// “temp_members_db”에서 검색하는 데이터를 “registered_members” 테이블에 삽입
$sql2=”INSERT INTO $tbl_name2(이름, 이메일, 비밀번호, 국가 )VALUES('$name', '$email', '$password', '$country')”;
$result2=mysql_query($sql2);
}

// if 암호 키를 찾을 수 없으면 "잘못된 확인 코드" 메시지가 표시됩니다
else {
echo "잘못된 확인 코드";
}

// "temp_members_db" 테이블에서 "테이블"로 데이터가 성공적으로 이동된 경우 Registered_members”는 “귀하의 계정이 활성화되었습니다”라는 메시지를 표시하고 “temp_members_db” 테이블에서 확인 코드를 삭제하는 것을 잊지 마세요
if($result2){

echo “귀하의 계정이 활성화되었습니다”;

// 이 패스키가 있는 “temp_members_db” 테이블에서 이 사용자의 정보를 삭제합니다.
$sql3=”DELETE FROM $tbl_name1 WHERE verify_code = '$passkey'”;
$result3=mysql_query($ sql3);

}

}
?>

주의 사항:

如果没有邮箱服务器的,会take现如下面提示之类的东西:

경고: mail() [function.mail]: "localhost" 포트 25에서 메일 서버에 연결하지 못했습니다. php.ini에서 "SMTP" 및 "smtp_port" 설정을 확인하거나 ini_set( ) inE:wampwwwmailverificationsignup_ac.php 온라인 39
귀하의 이메일 주소로 확인 링크를 보낼 수 없습니다

不用慌,这说明你的数据已经被写进数据库了。

你可以过验证:

先复到URL到你的浏览器:http://www.你적网站.com/confirmation.php?passkey=

然后到你的数据库里面把confirm_code复粘贴withpasskey=后面,并回车,会出现提示的:귀하의 계정이 활성화되었습니다!

恭喜你了!你件验证系统就完成了!如果有什么问题的,欢迎随时留言,回以最快的速島解决你的问题。由于时间关系,英文就不做翻译了。


관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿