ThinkPHP5開発(2) バックグラウンド検証付き登録機能を実装するグラフィックコードの詳細説明
効果:
検証効果: 1. データベース SQL スクリプト
-- phpMyAdmin SQL Dump -- version 4.4.15.5 -- http://www.phpmyadmin.net -- -- Host: localhost -- Generation Time: 2016-07-09 13:12:42 -- 服务器版本: 5.7.12-log -- PHP Version: 7.0.7 SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8mb4 */; -- -- Database: `thinkphp5` -- -- -------------------------------------------------------- -- -- 表的结构 `think_user` -- CREATE TABLE IF NOT EXISTS `think_user` ( `user_id` int(11) NOT NULL, `user_name` varchar(255) NOT NULL, `user_sex` int(11) DEFAULT NULL, `user_tel` varchar(255) DEFAULT NULL, `user_email` varchar(255) DEFAULT NULL, `user_address` varchar(255) DEFAULT NULL, `user_birth` varchar(255) DEFAULT NULL, `user_jointime` varchar(255) DEFAULT NULL, `user_passwd` varchar(255) DEFAULT NULL, `user_signature` varchar(255) DEFAULT NULL, `user_hobby` varchar(255) DEFAULT NULL ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4; -- -- 转存表中的数据 `think_user` -- INSERT INTO `think_user` (`user_id`, `user_name`, `user_sex`, `user_tel`, `user_email`, `user_address`, `user_birth`, `user_jointime`, `user_passwd`, `user_signature`, `user_hobby`) VALUES (1, 'thinkphp', 1, '15700000000', 'emial@email.com', '山东省济南市****路', '1111111', '111111', 'qqq', NULL, NULL), (2, 'pangPython', 1, '15700000000', 'email@emial.com', '山东省济南市', '201607096', NULL, '123456', 'nihao', '上速度速度'); -- -- Indexes for dumped tables -- -- -- Indexes for table `think_user` -- ALTER TABLE `think_user` ADD PRIMARY KEY (`user_id`); -- -- AUTO_INCREMENT for dumped tables -- -- -- AUTO_INCREMENT for table `think_user` -- ALTER TABLE `think_user` MODIFY `user_id` int(11) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=3; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
ディレクトリ構造: 2.
閲覧/登録/インデックス。 html
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>注册</title> </head> <style> dl{ text-align:center; border:2px solid #00CC99; margin-top:100px; margin-bottom:100px; margin-right:400px; margin-left:400px; } </style> <body> <div id="regist_form"> <dl> <form action="regist" method="post"> <dt> <p>姓名:<input type="text" name="user_name"></p> </dt> <dt> <p>性别:<input type="text" name="UserSex"></p> </dt> <dt> <p>手机:<input type="text" name="UserTel"></p> </dt> <dt> <p>邮件:<input type="text" name="UserEmail"></p> </dt> <dt> <p>地址:<input type="text" name="UserAddress"></p> </dt> <dt> <p>生日:<input type="text" name="UserBirth"></p> </dt> <dt> <p>加入时间:<input type="text" name="UserJoinTime"></p> </dt> <dt> <p>密码:<input type="password" name="UserPasswd"></p> </dt> <dt> <p>个性签名:<input type="text" name="UserSignature"></p> </dt> <dt> <p>喜好:<input type="text" name="UserHobby"></p> </dt> <dt> <p><input type="submit" value="注册"></p> </dt> </form> </dl> </div> </body> </html>
3. controller
<?php namespace app\index\controller; use think\View; use think\Controller; use app\index\model\User; class Regist extends Controller{ public function index(){ $view = new View(); return $view->fetch('index'); } //用户注册 public function regist(){ //实例化User $user = new User; //接收前端表单提交的数据 $user->user_name = input('post.user_name'); $user->user_sex = input('post.UserSex'); $user->user_tel = input('post.UserTel'); $user->user_email = input('post.UserEmail'); $user->user_address = input('post.UserAddress'); $user->user_birth = input('post.UserJoinTime'); $user->user_passwd = input('post.UserPasswd'); $user->user_signature = input('post.UserSignature'); $user->user_hobby = input('post.UserHobby'); //进行规则验证 $result = $this->validate( [ 'name' => $user->user_name, 'email' => $user->user_email, 'sex' => $user->user_sex, 'tel' => $user->user_tel, 'address' => $user->user_address, 'birth' => $user->user_birth, 'password' => $user->user_passwd, ], [ 'name' => 'require|max:10', 'email' => 'email', 'sex' => 'number|between:0,1', 'tel' => 'require', 'address' => 'require', 'birth' => 'require', 'password' => 'require', ]); if (true !== $result) { $this->error($result); } //写入数据库 if ($user->save()) { return $this->success('注册成功'); } else { return $this->success('注册失败'); } } }
thinkphp5マニュアルには、コントローラーで検証できる多くの検証方法が用意されており、ヘルパー関数
を使用できます。モデル検証。ただし、モデル内の検証では User クラスが検証クラスを継承する必要がありますが、PHP は多重継承をサポートしていません。どの方法が自分にとって最適かを選択する必要があります。 詳細に関しては、認証ルールをカスタマイズして、正規表現
を使用して携帯電話番号やID番号などを認証することができます。 model/User.php<?phpnamespace app\index\model;use think\Model;class User extends Model{
protected $pk = 'user_id';
}
以上がThinkPHP5開発(2) バックグラウンド検証付き登録機能を実装するグラフィックコードの詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Pagoda に thinkphp5 をデプロイするときに報告されたエラーの解決策: 1. Pagoda サーバーを開き、php pathinfo 拡張機能をインストールして有効にします; 2. 「.access」ファイルをコンテンツ「RewriteRule ^(.*)$index.php」で構成します。 ?s=/$1 [QSA ,PT,L]”; 3. Web サイト管理で、thinkphp の疑似静的機能を有効にするだけです。

thinkphp5 の URL 書き換えが機能しない場合の解決策: 1. mod_rewrite.so モジュールが httpd.conf 設定ファイルにロードされているかどうかを確認します; 2.AllowOverride None の None を All に変更します; 3. Apache 設定ファイル .htaccess を「RewriteRule ^」に変更します(.*)$index.php [L,E=PATH_INFO:$1]」を選択して保存します。

thinkphp5 が要求された URL を取得するためのメソッド: 1. "\think\Request" クラスの "$request = Request::instance();" メソッドを使用して、現在の URL 情報を取得します。 2. 組み込みヘルパーを使用します。関数「$request-> url()」を使用して、ドメイン名を含む完全な URL アドレスを取得します。

TP5 が strpos 関数を使用してヘッダーの content-type 値で app/json 文字列を検索するため、thinkphp5 post は値を取得できません。解決策は、ヘッダーの content-type 値を app/json に設定することです。

thinkphp5 タイトル バー アイコンを削除する方法: 1. thinkphp5 フレームワーク public で favicon.ico ファイルを見つけます; 2. ファイルを削除するか、別の画像を選択して名前を favicon.ico に変更し、元の favicon.ico ファイルを置き換えます。

PHP を使用してユーザー登録機能を実装する方法 最新のネットワーク アプリケーションでは、ユーザー登録機能は非常に一般的な要件です。登録機能により、ユーザーは自分のアカウントを作成し、対応する機能を利用することができます。この記事では、PHP プログラミング言語を使用してユーザー登録機能を実装し、詳細なコード例を示します。まず、ユーザーの登録情報を受け取るための HTML フォームを作成する必要があります。フォームには、ユーザー名、パスワード、電子メールなどのいくつかの入力フィールドを含める必要があります。フォームフィールドは実際のニーズに応じてカスタマイズできます。

thinkphp5 でコントローラーが存在しないというプロンプトが表示される場合の解決策: 1. 対応するコントローラーの名前空間が正しく記述されているかどうかを確認し、正しい名前空間に変更します; 2. 対応する tp ファイルを開いてクラス名を変更します。

PHP で電子メール認証ログインおよび登録機能を実装するにはどうすればよいですか?近年、ネットワークセキュリティの問題がますます顕在化しており、ユーザーアカウントのセキュリティをさらに向上させるために、多くのWebサイトにメール認証によるログインや登録機能が導入されています。この記事では、PHP を使用して電子メール認証のログインおよび登録機能を実装する方法を詳しく紹介し、対応するコード例を示します。 1. 登録機能:登録機能ではメール認証が必須となります。以下は、電子メール検証登録機能を実装する PHP コードの例です: <?php//接続数
