0

私のモデルのパブリック関数で私が呼び出す

$user_type=$this->get_user_type();

私が持っているのと同じモデルで

private function get_user_type()
{
    $user_type='asd';
    $asd_groups = (int)$config->get('asd_groups');
    $ver_groups = (int)$config->get('ver_groups');

    jimport( 'joomla.user.helper' );
    $user_groups=JUserHelper::getUserGroups($user->id);
    if(in_array($asd_groups,$user_groups)){
        $user_type='asd';
    }

    if(in_array($ver_groups,$user_groups)){
        $user_type='ver';
    }

    return $user_type;
}

「$this->get_user_type();」という呼び出し行にコメントを付けると、サイトは白いページを表示します。その後、動作します...ここで何が悪いのか本当にわかりません。

4

2 に答える 2

1

ここには、あなたを助けるのに十分な情報やコードがありません...例えば、どこ$configから来て、それは何ですか? これはどのバージョンの Joomla にありますか?

$configが として定義されていない場合global、PHP の設定によっては、それが問題の原因である可能性があります。

Joomla のグローバル設定で、自分で問題を見つけるためにできること。

  1. Joomlaでエラーメッセージを「開発」に設定します(ライブWebサイトではなく開発サイトを使用していますよね?)
  2. Joomla の DEBUG モードをオンにする

次に、エラー メッセージの詳細、Joomla のバージョン、このコードが実行されている場所 (モデルと言う)、およびどこ$configから来ているかで質問を更新します。

于 2014-09-25T08:59:47.967 に答える
0

はい!専用関数内の関数内からコードを移動したときに、2 つの構成変数がありませんでした。

この 2 行を関数の最初の行にコピーしたところ、機能するようになりました。

$config = JComponentHelper::getParams(S_APP_NAME);
$user = JFactory::getUser ();
于 2014-09-27T13:57:37.267 に答える