Forum Webscript.Ru

Программирование => Perl => Тема начата: Sonic от 15 Мая 2001, 16:29:52

Название: Подстановка html в несколько файлов
Отправлено: Sonic от 15 Мая 2001, 16:29:52
Всем привет. Столкнулся с такой заморочкой:
Есть несколько файлов - выполняющих разную работу, неважно какую. Нужно сделать чтобы в эти файлы подставлялся дизайн. Пробую так:

open (FILE, "top.htm");
@file = ;
close (FILE);
foreach $line (@file) {
print "$line
";
}

всё пучком, но только в этом скрипте нужно передавать с сылками кое-каие парметры, генерируемые скриптом, а как это сделать непоянтно. В приведённом примере если я ставлю например
bla, то он выводит ссылку bla-bla?asd=$ss, хотя должен  подставлять на место $ss значение. Пробовал и так:
bla - не помогает.
Вот бьюсь, бьюсь - никак не могу обойти.... :(
Поможите чем можите...
Название: Подстановка html в несколько файлов
Отправлено: lodevar от 15 Мая 2001, 17:39:04
Цитировать
Sonic (15-05-2001 16:29):
В приведённом примере если я ставлю например
bla, то он выводит ссылку bla-bla?asd=$ss, хотя должен  подставлять на место $ss значение.
Да, должен. Но ты реальную строчку покажи нам, где написан этот
Название: Подстановка html в несколько файлов
Отправлено: Sonic от 15 Мая 2001, 20:28:51
корзина
Название: Подстановка html в несколько файлов
Отправлено: Light Elf от 15 Мая 2001, 21:24:41
А если у меня в HTML будет:
"Ник нашего друга $|" или
"Ник нашего друга $asha",
то что по вашему Perl должен будет их обработать и выдать значения переменных или или пустые места, т.к. они окажутся undef ?

Может организовать так:
open (FILE, $file);
while (){
$_ =~ s#$peremennaya#$Znachenie_Peremennoi#ig;
$_ =~ s//значение spech_tega/ig;
print $_;
}
close(FILE);
Название: Подстановка html в несколько файлов
Отправлено: lodevar от 16 Мая 2001, 09:52:19
А по-моему - это вообще плохая затея: держать переменные в статическом файле, чтобы потом переписать и вставить значение. Зачем тормозить скрипт таким алгоритмом?
Название: Подстановка html в несколько файлов
Отправлено: AliMamed от 16 Мая 2001, 11:22:33
можно подумать никто шаблоны не юзал никогда

делай так:

в top.htm:
">bla

в скрипте при выводе top.htm
open (FILE, "top.htm");
while (){
$_ =~ s//$ss/ig;
print $_;
}
close(FILE);
Название: Подстановка html в несколько файлов
Отправлено: lodevar от 16 Мая 2001, 11:51:12
Это то же самое, что и реплика No 4, но в более облагороженном виде.
Название: Подстановка html в несколько файлов
Отправлено: AliMamed от 16 Мая 2001, 12:01:04
тогда ответ на 5-ое :-)

Цитировать
lodevar (16-05-2001 09:52):
А по-моему - это вообще плохая затея: держать переменные в статическом файле, чтобы потом переписать и вставить значение. Зачем тормозить скрипт таким алгоритмом?


ok - а какие другие варианты?
Название: Подстановка html в несколько файлов
Отправлено: lodevar от 16 Мая 2001, 12:08:23
Цитировать
AliMamed (16-05-2001 12:01):
тогда ответ на 5-ое :-)
ok - а какие другие варианты?
В данной задачке - вариантов, наверное, нет (нужно посмотреть ее целиком). А о других алгоритмах - просто изначально думается, где чего будет храниться, как и когда и куда выводиться (прям-таки стихи) :P
Название: Подстановка html в несколько файлов
Отправлено: Sonic от 16 Мая 2001, 15:00:41
Да конечно, нужно продумывать с самого начала как и что должно подставляться и исходя из алгоритма уже писать. Но такая уж ситуация сложилась :)
Сейчас сделал через спец тег (почти как сделал Али) Всем спасибо. А всё таки, если нет возможности установить специальный модуль шаблонов - как можно выкрутиться, не используя вышеприведённый вариант считывания в массив файла а потом вывод построчно?
Название: Подстановка html в несколько файлов
Отправлено: Light Elf от 16 Мая 2001, 20:55:52
Цитировать
lodevar (16-05-2001 11:51):
Это то же самое, что и реплика No 4, но в более облагороженном виде.

И в чем же этот более облагораженный вид выражается?
Это мне так, для справки :)
Название: Подстановка html в несколько файлов
Отправлено: lodevar от 17 Мая 2001, 09:27:16
Цитировать
Light Elf (16-05-2001 20:55):
И в чем же этот более облагораженный вид выражается?
Это мне так, для справки :)
Извини, если чем обидел ;-)
Облагороженный вид в том выражается, что его можно прям отсюда скопировать и врезать в скрипт. То-есть ответ конкретно по вопросу.