ホームページ >バックエンド開発 >PHPチュートリアル >ECMall_PHP チュートリアルの登録とログインのメカニズムを分析する
ecモール登録プロセスindex.php?app=member&act=register。
まずアプリは会員、行為は登録方法です。
index.php。主に eccore/ecmall.php を含む ecmall の起動メソッドを通じて開始されます。起動メソッドには、
を介して eccore/controller/app.base.php および eccore/model/model.base.php の基本クラスが含まれます。 リーリーアプリを入手して行動してください。
登録する場合はact=memberにしてください
リーリー$app ここ = new MemberApp、MemberApp クラスの register メソッドを呼び出します。 registerメソッドで登録情報を取得します。 global.lib.php の ms メソッドを介して。
リーリーそして register の ms() 関数内の次のプログラム
リーリーdefault.passport.php に DefaultPassport クラスが含まれており、数行のコードを持つ BasePassport を継承しています
リーリーこれが、プログラム内の $this -> user の由来です。
$user_class_name は、実際には include/passports/default.passport.php の DefaultPassportUser クラスです。そして、BasePassportUser を拡張し、BasePassportUser の _local_add() メソッドを呼び出します。 _local_add() メソッドは member.model.php の初期化データは、eccore/model/model.base.php の BaseModel クラスの function add($data, $compatibility = false) メソッドを通じてデータベース内で処理されます。これで登録機能は完了です。
リーリーecmall eコマースシステムにログインするプロセスは実際には非常に複雑です。まず、malldefaultlogin.html を呼び出してログイン ページを呼び出します。呼び出し元のプログラムは、appfrontend.base.php の login メソッドを呼び出して実装されます。
if (!IS_POST) プログラムはログイン ページの表示を表し、$this->display('login.html') を呼び出すことで処理されます。 ecmall の login.html ページには、主に次の変数が渡されます。 user_name、password、captcha の 3 つの変数がログイン検証に使用されます。 $user_name = trim($_POST['user_name']) および $password = $_POST['password'] は、主にユーザー名とパスワードを受け入れるために使用されます。ログイン検証は、ログイン センター $ms =& ms() に接続して $ms->user->auth($user_name, $password) を呼び出すことによって実行されます。
ファイル include/global.lib.php 内の関数 &ms() は、ログイン センターに接続するために使用されます。 include(ROOT_PATH . '/includes/passports/' . MEMBER_TYPE . '.passport.php'); $class_name = ucfirst(MEMBER_TYPE) . 'Passport';$ms = new $class_name(); ここでログインオブジェクトを宣言します。 。