2011-07-14 3 views
3

私はion authとcodeigniterを使ってWebアプリケーションを構築しています。コントローラのいくつかのメソッドを配列や何かに指定したいと思います。ここにいる理由は非常に迅速examplle私はcodeigniter/phpの認証チェックにいくつかのコントローラメソッドを渡すのですか?

class employers extends MY_Controller{ 

    function __construct(){ 

     parent::__construct(); 
    } 
    //i want these to be public 

    function index(){} 
    function signup(){} 

    //i wan these to require a login 

    function post_job(){} 
    function edit_job(){} 
    function delete_job(){} 

答えて

0

セグメント別のページやコントローラである

に関数に/ else文場合、追加Aの簡単な方法がなければならない認証機能 - を実行し、いくつかのではありません行動。コントローラクラスの認証を要求する必要があります。次に、ユーザーがログインしているかどうかを確認するためにセッションをチェックし、そのコントローラクラスの__constructメソッドを追加することができます。以下

class employers extends MY_Controller{ 

    function __construct(){ 

     parent::__construct(); 
    } 


    function index(){} 
    function signup(){} 

そして、もう一つのコントローラにして、それを維持する

class employersDashboard extends MY_Controller{ 

    function __construct() 
    { 
     // Add code to check authentication. If they pass redirect them to one of the actions below. 
     // If they fail, redirect them to "signup" action in controller "employers" above 
     parent::__construct(); 
    }  

    function post_job(){} 
    function edit_job(){} 
    function delete_job(){} 
+0

NOPの方法を参照してください。 ? –

+0

@ChrisMccabe方法がありますが、それはコーディングをより醜くするでしょう。これはより洗練されたソリューションです。 – FinalForm

+0

@ChrisMccabeさらに、コードはより組織化されており、コードの拡張により、それはもっときれいになり、読むのが面倒になるでしょう:-)。 – FinalForm