Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Глобальные переменные в модулях 
V
    Опции темы
TUMS
Дата 19.11.2008, 10:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 16.3.2008

Репутация: 2
Всего: 3



Доброе утро, уважаемые комрады.
По глупости и наивности своeй начал писать модульную систему, однако за неимением опыта получается вполне не так, как ожидалось...

Структура:
Код

/mods/FolderName/mod.php // файл описания модуля
/mods/FolderName/exe.php // главный исполняемый файл модуля
/libs/core.php     // Ядро
/index.php // Индекс

/libs/core.php
Код

$modules = array();
foreach(scandir($config['mods_dir']) as $dir) {
    if(is_dir($config['mods_dir'].'/'.$dir) 
&& file_exists($config['mods_dir'].'/'.$dir.'/'.$config['mods_main']) 
&& file_exists($config['mods_dir'].'/'.$dir.'/'.$config['mods_conf'])) {
        require_once($config['mods_dir'].'/'.$dir.'/'.$config['mods_conf']);
        $modules[$dir]['path'] = $dir;
        $modules[$dir]['name'] = $module['name'];
        $modules[$dir]['description'] = $module['description'];
        $modules[$dir]['template'] = $module['template'];
        $modules[$dir]['fullpath'] = $config['mods_dir'].'/'.$dir.'/'.$config['mods_main'];
    }
}

/mods/FolderName/mod.php
Код

$module['name'] = 'Трекер';
$module['description'] = 'Тут живет лось =)';
$module['template'] = 'tracker';

/mods/FolderName/exe.php
Код

function show_rec($profa_id) {
    global $db;
    return $db->select('SELECT * FROM item_template WHERE item_template.class =  9 
AND item_template.subclass = ? ORDER BY item_template.RequiredSkillRank ASC', $profa_id);
}

if(!isset($_GET['p_id'])) {
    $prof = htmlspecialchars($_GET['p_id']);
    foreach($data['profs'] as $profa => $profa_id) {
        echo '<a href="'.$_SERVER['php_self'].'?mode='.$_GET['mode'].'&p_id='.$profa_id.'">'.$profa.'</a><br />';
    }
}
elseif(isset($_GET['p_id'])){
    $p_id = (int)$_GET['p_id'];
    $recipes = show_rec($p_id);
    var_dump($recipes);
}

index.php
Код

include('libs/core.php');
if(!isset($_GET['mode'])) {
    echo 'lol';
}
else {
    $mode = htmlspecialchars($_GET['mode']);
    if(array_key_exists($mode, $modules)) {
        require_once($modules[$mode]['fullpath']);
    }
}


Проблема:
При передаче в модуль GET-запроса вида index.php?mode=FolderName&p_id=x этот самый p_id не определяется.

Намекните тонко на место где я просчитался smile

Заранее благодарен, Тумс.


UPD: Уважаемые комрады, извиняйте. После непонятно каких действий почему-то всё заработало. Спасибо за внимание.


Это сообщение отредактировал(а) TUMS - 19.11.2008, 10:32
PM MAIL WWW ICQ Skype GTalk Jabber MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1003 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.