2

ユーザーがページを表示するためにログインしていることを確認するために、ログインのセッション検証に取り組んでいます。私はこのエラーを受け取り続けます:

致命的なエラー:クラス'MY_Staffcontroller'が/usr/local/var/www/CodeTest/ci/application/controllers/staff_c.phpの3行目に見つかりません

私のstaff_cページはそのように見えます:

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Staff_c extends MY_Staffcontroller {

    function homepage()
    {
        $data['main_content'] = 'homepage_view';
        $this->load->view('includes/template', $data);
    }
}

私はあちこちで同じ質問を読んでいて、彼らはほとんど同じことを言っています...

コントローラはアプリケーション/コアにありますか?

そうですね。このこぶを通り抜けられないようです!

コントローラーイメージ

これは内のコードですMy_Staffcontroller.php

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class MY_staffcontroller extends CI_Controller {

    function __construct()
    {
        parent::__construct();

        $loggedin = $this->session->userdata('loggedin');
        if(!isset($loggedin) || $loggedin != TRUE);
        {
            die($this->load->view('denied'));
        }
    }
}

これはCodeIgniterを使用した2日目であるため、これがユーザーエラーであることはわかっていますが、適切な回避策が見つからないようです。

私はこのチュートリアルを試しましたが、まだ何もありません。

このビデオをフォローしていても、セッションの部分で立ち往生しています。

そして、私はこれを機能させることができません。

4

1 に答える 1

4

Linuxは大文字と小文字を区別しますが、Windowsは大文字と小文字を区別しないことを忘れないでください。

あなたがファイルMY_Staffcontrollerの中にいる場所application/core/MY_Controller.php

ファイルMY_Controller.phpは次のようになります(他の関数を除いて、これは最小限の例です)

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class MY_Controller extends CI_Controller
{
   public function __construct() 
   {
       parent::__construct(); 
   }
}
class MY_Staffcontroller extends MY_Controller 
{
    public function __construct() 
    {
       parent::__construct();
    }
    public function sayHello()
    { 
        echo "Hello, I am a function within MY_Staffcontroller.php";
    }
}

これは/application/controllersディレクトリに配置されます。基本的に、いずれかのORに配置さprotectedpublicた関数は、拡張コントローラーを拡張する派生コントローラーからアクセスできます。この場合、MY_ControllerMY_StaffcontrollerMY_Staffcontroller

class Public_Staff_Controller extends MY_Staffcontroller 
{
    public function __construct()
    {
        parent::__construct();
    }
    public function index()
    {
        $this->sayHello();
    }
}

/* end of file /application/core/MY_Controller.php */
于 2013-02-15T03:43:23.877 に答える