Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Perl (http://www.flasher.ru/forum/forumdisplay.php?f=21)
-   -   Perl не выводит SSI? (http://www.flasher.ru/forum/showthread.php?t=54443)

qwetech04 05.02.2004 23:18

Perl не выводит SSI?
 
Здравствуйте. Скажите пожалуйста: а перл разве SSI через код не вставляет? Вобщем: запускаю файл test.pl c содержанием:

#!/usr/bin/perl

print "Content-type: text/html\n\n";

print "<html>\n";
print "<head>\n";
print "<title>Тестовая страница</title>\n";
print "</head>\n";
print "<body>\n";
print "<!--\#include file=\"vstav.html\" -->\n";
print "</body>\n";
print "</html>\n";

и вместо кода из файла vstav.html он мне выдает страницу с <!--#include file="vstav.html" -->

<html>
<head>
<title>Тестовая страница</title>
</head>
<body>
<!--#include file="vstav.html" -->
</body>
</html>

почему он директиву SSI не обработал? (Сам сервер все дириктивы воспринимает, если их не через перл делать, а напрямую в хтмл вставлять)

Crazy 06.02.2004 15:54

Re: Perl не выводит SSI?
 
Цитата:

Оригинал написал(а) qwetech04
почему он директиву SSI не обработал?
Потому, что это не его собачье дело -- чужие директивы обрабатывать.

qwetech04 06.02.2004 16:43

Я чего-то не понимаю тогда.... я имел ввиду апач почему не обрабатывает? Я думаю что скрипт формирует страницу, затем ее обрабатывает браузер и увидев директиву SSI вставляет код из файла...

Crazy 06.02.2004 17:01

Цитата:

Оригинал написал(а) qwetech04
Я чего-то не понимаю тогда.... я имел ввиду апач почему не обрабатывает?
А ты его об этом просил? Ты попросил вывести текст в браузер -- так и было сделано.

Цитата:

Я думаю что скрипт формирует страницу, затем ее обрабатывает браузер
Верно.

Цитата:

и увидев директиву SSI вставляет код из файла...
Где ты видел браузер, который понимает SSI-директивы? Науки такие браузеры неизвестны.

qwetech04 06.02.2004 18:20

Все. Ставлю вопрос в лоб :confused: Как сделать, чтобы он вместо

<body>
<!--#include file="vstav.html" -->
</body>

не текст вставлял, а чтобы код из файла vstav.html

Crazy 06.02.2004 18:24

Цитата:

Оригинал написал(а) qwetech04
Как сделать
1. Открыть документацию.
2. Прочесть раздел про регулярные выражения.
3. Прочесть радел про файловые функции.
4. Применить полученные знания на практике.

qwetech04 06.02.2004 21:54

я это все знаю, это ты намекаешь на влоб через open();?

Crazy 07.02.2004 22:25

Цитата:

Оригинал написал(а) qwetech04
я это все знаю, это ты намекаешь на влоб через open();?
Можно, разумеется, на лыжах и в гамаке. Но если у тебя нет реальных причин поступать иначе, то open.

qwetech04 08.02.2004 10:45

Цитата:

Можно, разумеется, на лыжах и в гамаке.
Если честно - не понял фразу. :) Это значит что вариант через одно место?

Цитата:

Но если у тебя нет реальных причин поступать иначе, то open.
Да меню большое, и мне его менять каждый раз в скрипте не хочется (вдруг там кнопочка добавилась). А кроме как через опен, я ничего придумать больше не могу. Буду рад услышать как по-другому.

Fyn 10.02.2004 18:07

Если понимаешь, то этот вариант:
Цитата:

print "<body>\n";
print "<!--\#include file=\"vstav.html\" -->\n";
print "</body>\n";
называется через одно место... Ты же работаешь с Perl...
Я всегда полагал, что SSI используется в shtml (html) для включения Perl скриптов, но никак не наоборот... :confused:
А в Perl используется open(), require '' или use...


Часовой пояс GMT +4, время: 18:13.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.