Forum Webscript.Ru

Программирование => Perl => Тема начата: Yaroslav от 29 Июля 2003, 23:10:06

Название: дизайн сайта
Отправлено: Yaroslav от 29 Июля 2003, 23:10:06
вообщем есть скрипт index.cgi который печатает шапку, левую колонку,  правую колонку и низ.
вопрос следубщий, как вставить между этими 2 колонками еще один скрипт (seminar.cgi напимер)
я решал эту проблему с помощью ifreme, но мне он не нравится, так как не растягивает колонки в длину, а всовует прокрутку.
пример можно глянуть тут http://www.urp.kiev.ua/index.cgi
и соответственно http://www.urp.kiev.ua/index.cgi?seminar
Название: дизайн сайта
Отправлено: Phoinix от 30 Июля 2003, 09:45:14
Ну возможно просто подцепить скрипт seminar.cgi в index.cgi
примерно так....

...
...
print qq "Шапка и левое меню";

if ($param eq "seminar") {
  require "./seminar.cgi";
}

print qq "Правое меню и низ";

Только имей ввиду, что скрипт seminar.cgi не должен завершаться, т.е. exit быть не должно, и в конце скрипта желательно поставить 1;
Название: дизайн сайта
Отправлено: Yaroslav от 30 Июля 2003, 18:13:49
Цитировать
Phoinix:
require "./seminar.cgi";

спасибо, помогло.
но появились следующие вопросы. Помогите необразованому :)
1. зачем в конце скрипта seminar.cgi ставить 1;
2. как передать в данном случае news=что то там&step=2 в скрипт seminar.cgi, а то получается что он передает это в index.cgi
Название: дизайн сайта
Отправлено: Phoinix от 30 Июля 2003, 19:13:45
Цитировать
1. зачем в конце скрипта seminar.cgi ставить 1;


Цитирую из энциклопедии перл:
... Последний исполняемый оператор включаемого файла должен вернуть TRUE, указывая на успешное завершение процесса загрузки и инициализированных процедур. Поэтому вы можете просто использовать в качестве последней строки файла библиотеки конструкцию "1;".

Цитировать
2. как передать в данном случае news=что то там&step=2 в скрипт seminar.cgi, а то получается что он передает это в index.cgi


Так и передавай, переменные окружения index.cgi распространяются и на seminar.cgi, единственно что бы имена переменных окружения index.cgi и seminar.cgi не совпадали... получится должно что-то похожее на

mysite.ua/index.cgi?переменные окружения index.cgi&переменные окружения seminar.cgi
Название: дизайн сайта
Отправлено: Yaroslav от 31 Июля 2003, 09:57:35
Цитировать
Phoinix:
mysite.ua/index.cgi?переменные окружения index.cgi&переменные окружения seminar.cgi

с методом GET все получилось, а вот сможет ли принять seminar.cgi метод POST?
Название: дизайн сайта
Отправлено: Phoinix от 31 Июля 2003, 12:16:53
Yaroslav
Да, конечно... В данном случае seminar.cgi не выступает отдельным скриптом, а частью index.cgi, поэтому передавай смело!!!
Название: дизайн сайта
Отправлено: Yaroslav от 31 Июля 2003, 20:46:51
ну и чудеса!
мучался со своими скриптами (там все так запущено) ничего не получалось, решил создать 2 тестовых файла, что б вы посмотрели....и ПОЛУЧИЛОСЬ!!!! РАБОТАЕТ!!!!
Спасибо.
Название: дизайн сайта
Отправлено: Phoinix от 01 Августа 2003, 12:18:38
Yaroslav
IMHO подобные задачи все-таки проще решать через SSI, непонятно, зачем тебе полная динамика просто для вывода html страниц???
Название: дизайн сайта
Отправлено: Yaroslav от 03 Августа 2003, 20:08:10
Цитировать
Phoinix:
IMHO подобные задачи все-таки проще решать через SSI

я так и не понял как с  ими работать хотя пробовал, но что то мне этот вариант не очень.
а зачем мне все это нужно, ну скажем есть рабочий вариант (пока еще рабочий http://urp.la4.net), вот и надо сделать с нового что то типа этого, но лутше, вот я и решил сделать без ifreme