Maison cadre php PensezPHP thinkphp5 l'inscription et la connexion les plus parfaites

thinkphp5 l'inscription et la connexion les plus parfaites

Mar 12, 2021 pm 05:48 PM
1

contrôleur d'index d'application d'espace de noms ;

utiliser la base de contrôleur commune d'application ; //导入公共控制器

utilisez think Db;

utilisez le modèle d'index d'application Ajouter en tant que AddModel;

utilisez think Validate;

utilisez think Session;

utiliser think façade Url;

class Index extends Base {

public

function index() {

$s = cookie ( 'email' );

if ( is_null( $s ) ) {

return $this->fetch();

} else {

$q = '亲爱的用户名邮箱为';

$h = '欢迎回来';

$this->assign( [ 'email' => $s ,

'q' => $q,

'h' => $h,

] );

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

jpg contrôleur;

utiliser think Controller;

utiliser l'application commune Valider;

utiliser la base du contrôleur commun de l'application;

utiliser le modèle commun de l'application Utilisateur en tant que modèle utilisateur;

class User étend Base {

//注册页面

public

function register() {

$this->assign ( [ 'title' => '用户注册' ] );

return $this->fetch();

}

public

function insert() {

//接受数据

$data = input( 'post.' );

$c = $_POST[ 'email' ];

$d = $_POST[ 'mobile' ];

$code = $_POST[ 'code' ];

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

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

$h = is_null( $c );

$z = is_null( $d );

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

echo "";

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

}

if ( !captcha_check( $code ) ) {

echo "<script>alert('您没有输入验证码或验证码错误!');</script>";

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

}

$sjh = $_POST[ 'mobile' ];

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

echo "<script>alert('不是手机号!');</script>";

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

quitter ;

}

//实例化验证器

$validate = nouvelle application commune valider l'utilisateur ;

//进行数据验证

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

$data = input( 'post.' );

unset( $data[ 'password_confirm ' ] );

$user = new UserModel( $data );

$a = $user->allowField( [ 'nom', 'email', 'mobile', ' mot de passe' ] )->save();

if ( $a = 1 ) {

$code = input( 'code' );

echo "< ;script>alert('注册成功请登录看一下吧!');";

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

}

} else {

dump( $validate->getError() );

}

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

}

//用户登录

public

function login() {

$this ->attribuer( [ 'titre' => '用户登录' ] );

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

}

public

fonction loginCheck () {

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

echo "<script>alert('请不要动地址栏!'); </script>";

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

exit;

}

$a = UserModel::get( [ 'email' => $_POST[ 'email' ] ] );

$b = UserModel::get( [ 'password' => $_POST[ 'mot de passe' ] ] );

$c = $_POST[ 'email' ];

$d = $_POST[ 'mot de passe' ];

$e = is_null( $a );

$f = is_null( $b );

if ( $c != '' && $d != '' ) {

if ( $f + $e != 1 ) {

cookie( 'email', $c, 900000 ); // 指定cookie保存时间

$s = cookie( 'email' );

if ( $s = cookie( 'email' ) ) {

$q = '亲爱的用户名邮箱为';

$h = '欢迎回来';

echo "<script>alert('现在已经登录了!');</script&gt ;";</p><p> $this->assign( [ 'email' => $c,</p> <p> 'q' => $q,</p> <p> 'h' => $h,</p> <p> ] );</p> <p> return $this->fetch( 'user/dlhdym' );</p> <p> }</p> <p> } sinon {</p> <p> 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="首页"}

 

   

 

   

 

 

 

   

 

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Vous avez un jeu croisé?
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Quelles sont les principales considérations pour utiliser ThinkPhp dans une architecture sans serveur? Quelles sont les principales considérations pour utiliser ThinkPhp dans une architecture sans serveur? Mar 18, 2025 pm 04:54 PM

L'article traite des considérations clés pour l'utilisation de ThinkPHP dans des architectures sans serveur, en se concentrant sur l'optimisation des performances, la conception sans état et la sécurité. Il met en évidence des avantages tels que la rentabilité et l'évolutivité, mais relève également des défis

Quelles sont les caractéristiques avancées du conteneur d'injection de dépendance de ThinkPhp? Quelles sont les caractéristiques avancées du conteneur d'injection de dépendance de ThinkPhp? Mar 18, 2025 pm 04:50 PM

Le conteneur IOC de ThinkPhp propose des fonctionnalités avancées comme le chargement paresseux, la liaison contextuelle et l'injection de méthode pour une gestion efficace des dépendances dans les applications PHP. COMMANDE CHARACTER: 159

Comment implémenter la découverte de services et l'équilibrage de chargement dans les microservices ThinkPHP? Comment implémenter la découverte de services et l'équilibrage de chargement dans les microservices ThinkPHP? Mar 18, 2025 pm 04:51 PM

L'article discute de la mise en œuvre de la découverte de services et de l'équilibrage des charges dans les microservices ThinkPHP, en se concentrant sur la configuration, les meilleures pratiques, les méthodes d'intégration et les outils recommandés. [159 caractères]

Quelles sont les principales caractéristiques du cadre de test intégré de ThinkPHP? Quelles sont les principales caractéristiques du cadre de test intégré de ThinkPHP? Mar 18, 2025 pm 05:01 PM

L'article traite du cadre de test intégré de ThinkPhP, mettant en évidence ses principales fonctionnalités telles que les tests d'unité et d'intégration, et comment il améliore la fiabilité des applications grâce à la détection précoce des bogues et à une meilleure qualité de code.

Comment construire un système de file d'attente de tâches distribué avec ThinkPhp et RabbitMQ? Comment construire un système de file d'attente de tâches distribué avec ThinkPhp et RabbitMQ? Mar 18, 2025 pm 04:45 PM

L'article décrit la création d'un système de file d'attente de tâches distribué à l'aide de ThinkPhp et RabbitMQ, en se concentrant sur l'installation, la configuration, la gestion des tâches et l'évolutivité. Les problèmes clés incluent assurer la haute disponibilité, éviter les pièges communs comme Imprope

Comment utiliser ThinkPHP pour créer des outils de collaboration en temps réel? Comment utiliser ThinkPHP pour créer des outils de collaboration en temps réel? Mar 18, 2025 pm 04:49 PM

L'article discute de l'utilisation de ThinkPHP pour créer des outils de collaboration en temps réel, en se concentrant sur la configuration, l'intégration WebSocket et les meilleures pratiques de sécurité.

Comment utiliser ThinkPHP pour construire des flux de données boursières en temps réel? Comment utiliser ThinkPHP pour construire des flux de données boursières en temps réel? Mar 18, 2025 pm 04:57 PM

L'article discute de l'utilisation de ThinkPHP pour les flux de données boursières en temps réel, en se concentrant sur la configuration, la précision des données, l'optimisation et les mesures de sécurité.

Quels sont les principaux avantages de l'utilisation de ThinkPHP pour construire des applications SaaS? Quels sont les principaux avantages de l'utilisation de ThinkPHP pour construire des applications SaaS? Mar 18, 2025 pm 04:46 PM

ThinkPHP profite aux applications SaaS avec sa conception légère, son architecture MVC et sa extensibilité. Il améliore l'évolutivité, accélère le développement et améliore la sécurité grâce à diverses fonctionnalités.

See all articles