Автор Тема: mod_perl + переменные родительского скрипта  (Прочитано 2061 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Phoinix

  • RW
  • Ветеран
  • *****
  • Сообщений: 1097
  • +0/-0
  • 2
    • Просмотр профиля
    • http://phoinix.ucoz.ru
Делаю в начале скрипта, одну и те же опрерации, поэтому что бы не мучатся вынес их в модуль, а что бы не передавать переменные по десять раз, использовал такой прием:

модуль:

package WM4
::Action;
use 
strict; use DBI; use Storable;
require 
Exporter;
our @ISA qw(Exporter);
our $VERSION = \'1.00\';

sub start_script {
     eval {$::site_vars = retrieve(\'./../config/variables.conf\')} || ... ;
     $::dbh = \'DBI:mysql:database=\'.$::site_vars->{\'MysqlBase\'} ... ;     
...


и просто вызываю в скрипте:
use vars \'$site_vars\', \'$dbh\', ... ;
use WM4::Action; WM4::Action->start_script;

Но когда попытался, такой финт сделать с использованием mod_perl - ошибки не дало, но при этом в модуле не присваивались никакие значения...

Интересно, что даже указание переменных как глобальных, не дало никакого результата... они постоянно "теряются"...

Объявление переменных, и их инициализация непосредственно в конфиге Apache, тоже неичего не принесло положительного...

Просто не хочется возвращать из модуля конкретные значения переменных, т.к. их инициализируется порядка 9-15 штук...


mod_perl 1.29
Apache 1.3.29... (хм, надо бы обновить...)
Perl 5.8.4
« Последнее редактирование: 22 Ноября 2004, 11:06:46 от Phoinix »

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28