Ground Sunlight

Windowsで作る - PHPプログラミングの開発環境

ユーザ用ツール

サイト用ツール


apricot:ext:session-auth

差分

このページの2つのバージョン間の差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
apricot:ext:session-auth [2020/05/25 11:26]
y2sunlight [AuthController クラス]
apricot:ext:session-auth [2020/05/25 21:03]
y2sunlight [AuthController クラス]
行 283: 行 283:
  
   * **login()** : ログイン(認証)   * **login()** : ログイン(認証)
-    * バリデーション( validate() )をしてエラーならエラー画面を返します。 +    * バリデーション( validate() )を実行します。 
-    * バリデーション全体については[[apricot:app:validation|こちら]]を、検証ルールについては[[apricot:app:validation#検証ルール|こちらを]]を参照して下さい。\\ \\ +    * バリデーション全体については[[apricot:app:validation|こちら]]を、検証ルールについては[[apricot:app:validation#検証ルール|こちらを]]を参照して下さい。 
 +    * バリデーションでエラーの場合: 
 +      * withInputs()で入力変数をフラッシュ変数に保存します。 
 +      * withErrors()でバリデーションのエラーバッグをフラッシュ変数に保存します。 
 +      * redirect()でログイン画面にリダイレクトするResponseオブジェクトをします。\\ \\ 
     * Input::all()でフォームデータを取得します。     * Input::all()でフォームデータを取得します。
     * AuthUser::authenticate() でユーザ認証を行います。     * AuthUser::authenticate() でユーザ認証を行います。
行 407: 行 411:
 </html> </html>
 </code> </code>
- 
-<WRAP left important 60%> 
-TODO: 説明文 
-</WRAP> 
- 
-<WRAP left important 60%> 
-TODO: ソースに@csr追加 
-</WRAP> 
  
 \\ \\
行 454: 行 450:
 ... ...
             {{--             {{--
-            @if(app_has('auth'))+            @if(app('auth.menu',false))
             <ul class="navbar-nav ml-auto">             <ul class="navbar-nav ml-auto">
                 <a id="navbarDropdown" class="nav-link dropdown-toggle" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" v-pre>                 <a id="navbarDropdown" class="nav-link dropdown-toggle" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" v-pre>
-                    {{user()->account}} <span class="caret"></span>+                    {{AuthUser::getUser()->account}} <span class="caret"></span>
                 </a>                 </a>
                 <div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdown">                 <div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdown">
行 491: 行 487:
  
 use App\Foundation\Controller; use App\Foundation\Controller;
 +use App\Foundation\Security\AuthUser;
  
 /** /**
行 503: 行 500:
     public function index()     public function index()
     {     {
-        $message = __('messages.home.msg_hello', [':account'=>user()->account]);+        $message = __('messages.home.msg_hello', [':account'=>AuthUser::getUser()->account]);
         return render('home',['message'=>$message]);         return render('home',['message'=>$message]);
     }     }
行 509: 行 506:
 </code> </code>
  
-  * '' [':account'=>env('APP_NAME')] '' の部分を '' user()->account '' に変更します。+  * ''AuthUser'' の ''use'' を追加します。 
 +  * '' [':account'<nowiki>=></nowiki>env('APP_NAME')] '' の部分を '' AuthUser::getUser()<nowiki>->account</nowiki> '' に変更します。
  
 \\ \\
行 530: 行 528:
 [{{apricot:ext:ext07.png?nolink}}] [{{apricot:ext:ext07.png?nolink}}]
 ■ 正しいユーザ名とパスワードを入力して[ログイン]ボタンを押すと、ホーム画面が画面が表示されます。\\  ■ 正しいユーザ名とパスワードを入力して[ログイン]ボタンを押すと、ホーム画面が画面が表示されます。\\ 
-■ [ログイン状態を保存する]をチェックすると、ログイン状態でブラウザを閉じてもログイン状態が保持され、再度Apricotにアクセスすると自動ログイン機能が働きます。自動ログインの有効期間は[[#ユーザ認証の設定|app.phpのauth.expires_sec]]で設定して下さい。+■ [ログイン状態を保存する]をチェックすると、ログイン状態でブラウザを閉じてもログイン状態が保持され、再度Apricotにアクセスすると自動ログイン機能が働きます。自動ログインの有効期間は[[#セッション認証の設定|app.phpのauth.expires_sec]]で設定して下さい。
  
 [{{apricot:ext:ext08.png?nolink}}] [{{apricot:ext:ext08.png?nolink}}]
apricot/ext/session-auth.txt · 最終更新: 2020/05/25 21:03 by y2sunlight