PHP Problem dahil

0 Cevap php

hey everyone i'm trying to apply some module system on my web, using get and include, here's some of my code on my index.php

    $section = 'user';
    if(isset($_GET) && !empty($_GET) && $_GET !== ''){
        $module = $_GET['module'].".php";
        load_module($section, $module);
    }

load_module fonksiyonu

function load_module($section="", $module=""){
    include(SITE_ROOT.DS.$section.DS.'modules'.DS.$module);
}

* Ben zaten DIRECTORY_SEPARATOR olarak DS tanımlamak var

ve i modülleri klasörünün içinde, dosya yükler mükemmel, benim sorunum benim dahil sayfada ilan tüm değişken yüklemek için başarısız olduğunu birkaç dosya saklanır, burada bulunan dosyanın biri benim kod

if($session->is_logged_in()){
    $user = User::find_by_id($session->user_id);
    $profile = $user->profile();
    $company = $user->compro();
    $logo = $user->logo();
}else{redirect_to('index.php');}

benim index.php ben bu hata var

Notice: Undefined variable: session in C:\www\starpro\user\modules\edit_company.php on line 3 Fatal error: Call to a member function is_logged_in() on a non-object in C:\www\starpro\user\modules\edit_company.php on line 3 

benim index.php içinde bu değişkenleri taşımak ve eğer, ben bu mesajı alıyorum

Notice: Undefined variable: company in C:\www\starpro\user\modules\edit_company.php on line 181  Notice: Trying to get property of non-object in C:\www\starpro\user\modules\edit_company.php on line 181

Bazı biri bana yardım edin, şimdiden teşekkür ederim

Selamlar

================================================== ====================

i deceze cevabını kullanıyorum

ve bu gibi statik bir işlevi ekleyerek benim kullanıcının sınıf değiştirmek

public static function load_module($section="", $module="", $user_id=""){
$user = self::find_by_id($user_id);
    $profile = $user->profile();
    $company = $user->compro();
    $logo = $user->logo();
include(SITE_ROOT.DS.$section.DS.'modules'.DS.$module);
}

ve sonra benim indeksine i kullanmak

if(isset($_GET) && !empty($_GET) && $_GET !== ''){
    $module = $_GET['module'].".php";
    User::load_module($section, $module, $user->id);
}else{

i got it working, but is this a bad practice ?? need advise

thanks much

0 Cevap