> PHP 프레임워크 > ThinkPHP > thinkphp5 가장 완벽한 등록 및 로그인

thinkphp5 가장 완벽한 등록 및 로그인

爆肝混世大魔王-流笙 第五人格服务
풀어 주다: 2021-03-15 09:02:15
원래의
240명이 탐색했습니다.

네임스페이스 앱 인덱스 컨트롤러;

앱 공통 컨트롤러 사용 베이스; //공통 컨트롤러 가져오기

think Db 사용;

앱 인덱스 모델 사용 AddModel로 추가;

think 유효성 검사 사용;

사용 Think Session;

think Facade Url 사용;

class Index 확장 기본 {

public

function index() {

$s = cookie( 'email' );

if ( is_null( $s ) ) {

return $this->fetch();

} else {

$q = '친애하는 사용자 이름과 이메일 주소는 다음과 같습니다.';

$h = '돌아오신 것을 환영합니다';

$this->sign ( [ '이메일' => $s,

'q' => $q,

'h' => $h,

] );

return $this->fetch( '사용자 / dlhdym' );

}

}

}

네임스페이스 앱 인덱스 컨트롤러;

think 컨트롤러 사용;

앱 공용 유효성 검사;

앱 공용 컨트롤러 베이스 사용;

앱 사용 공통 모델 User as UserModel;

class User 확장 Base {

//등록 페이지

public

functionregister() {

$this->ass( [ 'title' => '사용자 등록' ] );

return $this->fetch();

}

public

function insert() {

//Accept data

$data = input( 'post.' );

$ c = $_POST[ '이메일' ];

$d = $_POST[ '모바일' ];

$code = $_POST[ '코드' ];

$c = UserModel::get( [ '이메일' = > $_POST[ 'email' ] ] );

$d = UserModel::get( [ 'mobile' => $_POST[ 'mobile' ] ] );

$h = is_null( $c ) ;

$z = is_null( $d );

if ( $h + $z != 2 ) {

echo "<script>alert('안녕하세요. 등록하려는 이메일 또는 휴대폰 번호입니다. 플랫폼 누군가 이미 등록했습니다. 정보를 변경하세요');</script>";

return $this->fetch( 'user/register' );

}

if ( !captcha_check( $code ) ) {

echo "<script>alert('인증 코드를 입력하지 않았거나 인증 코드가 잘못되었습니다!');</script>";

return $this->fetch( 'user /등록' )

}

$sjh = $_POST[ '모바일' ];

if ( preg_match( "/^1[34578]{1}d{9}$/", $sjh ) ) { } else {

echo "<script>alert('휴대폰 번호가 아닙니다!');</script>";

return $this->fetch( 'user/register' );

종료 ;

}

/ /유효성 검사기 인스턴스화

$validate = 새 앱 공통 유효성 검사 사용자;

//데이터 유효성 검사 수행

if ( $validate->check( $data ) ) {

$data = input( 'post.' );

unset( $data[ 'password_confirm' ] );

$user = new UserModel( $data );

$a = $user->allowField( [ 'name', '이메일', '모바일', '비밀번호' ] )->save();

if ( $a = 1 ) {

$code = input( 'code' );

echo "<script> Alert('등록이 완료되었습니다. 로그인하고 살펴보세요!');</script>";

return $this->fetch( 'user/login' );

}

} else {

dump( $validate->getError () );

}

return $this->fetch( 'user/register' );

}

//사용자 로그인

public

함수 login() {

$this-> 할당( [ 'title' => '사용자 로그인' ] );

return $this->fetch( 'user/login' );

}

public

함수 loginCheck() {

if ( isset( $_POST[ 'email' ] ) ) {} else {

echo "<script>alert('주소 표시줄을 이동하지 마세요!');</script&gt ;";</p><p> return $this-> 리디렉션( 'index/index/index' );</p> <p> 종료;</p> <p> }</p> <p> $a = UserModel::get( [ 'email' => $_POST[ ' email' ] ] );</p> <p> $b = UserModel::get( [ 'password' => $_POST[ 'password' ] ] );</p> <p> $c = $_POST[ 'email' ];</p> <p> $d = $_POST[ '비밀번호' ];</p> <p> $e = is_null( $a );</p> <p> $f = is_null( $b );</p> <p> if ( $c != '' && $d != '' ) { </p> <p> if ( $f + $e != 1) {</p> <p> cookie( 'email', $c, 900000 ) // 쿠키 저장 시간 지정 </p> <p> $s = cookie( 'email' );</p> <p> if ( $s = cookie( 'email' ) ) { </p> <p> $q = '친애하는 사용자 이름과 이메일 주소는 다음과 같습니다.';</p> <p> $h = '돌아오신 것을 환영합니다';</p> <p> echo "<script>alert('이제 로그인되었습니다! ');</script>";

$this->할당( [ 'email' => $c,

'q' => $q,

'h' => $h ,

] );

return $ this->fetch( 'user/dlhdym' );

}

} else {

echo "<script>alert('邮箱或密码错误');</script>";

return $this->fetch( 'user/login' );

}

} else {

echo "<script>alert('您还没有输入邮箱或密码');</script>";

return $this->fetch( 'user/login' );

}

}

}

namespace app\ index\ controller;

use think\ Controller;

use think\ facade\ Url;

use think\ Cookie;

class tt extends Controller {

public

function index() {

cookie::delete( 'email' );

return $this->fetch( 'index/index' );

}

}

 

 

   

 

 {include file="public:header"/}

  {include file="index:nav"/}

 

 

{include file="public:right"/}

{include file="public:footer"/}

 {include file="public:header"/}

  {include file="public:nav"/}

 

 

{include file="public:right"/}

{include file="public:footer"/}

 {include file="public:header"/}

  {include file="public:nav"/}

 

 

{include file="public:right"/}

{include file="public:footer"/}



  验证码:

 

{$title|default="首页"}

 

   

 

   

 

 

 

   

 

위 내용은 thinkphp5 가장 완벽한 등록 및 로그인의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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