Сайтостроительство


         

Server Side Includes - часть 6


Но поскольку в строке запроса присутствует параметр for_printing, то лишний HTML-код не включается на страницу. Обратите внимание <!--#echo var="QUERY_STRING"-->. Это строка запроса CGI-параметров. В обычном случае, у вас никаких параметров, кроме for_printing нет, но когда появляются на сайте CGI-модули, то появляются и дополнительные параметры. Забегая вперед расскажу, как делать "Версию для печати" В CGI-программе. Пока веб-сервер Apache не может обрабатывать на SSI-директивы вывод CGI-программ. Такую возможность обещают в новых версиях Apache. У CGI-программистов есть два пути либо самим разобрать SSI-директивы в файле head.inc либо, что значительно проще, создать ручками файл phead.inc и подключать его в CGI-программах.

Условные операторы записываются следующим образом:

<!--#if expr="условие1" --> <!-- Здесь HTML-код1 --> <!--#elif expr="условие2" --> <!-- Здесь HTML-код2 --> <!--#else --> <!-- Здесь HTML-код3 --> <!--#endif -->

Для примера приведу SSI-код для вывода времени последней модификации документа в приемлемом виде. Как вы уже видели, команда <!--#echo var="LAST_MODIFIED" --> выдает совершенно не приемлемую строчку - Monday, 26-Feb-2001 19:25:58 Московское время (зима), для размещения ее на солидном веб-сайте. Нам бы хотелось получить что-нибудь, вроде 26 Февраля 2001 года. Для этого существует команда config с параметром timefmt, которая задает формат вывода даты. Например, в нашем случае нам требуется следующий вариант <!--#config timefmt="%e %B %Y"-->, тогда результат <!--#echo var="LAST_MODIFIED" --> будет 26 February 2001. Но это пока все равно не то, что бы нам хотелось. Для определения месяца мы воспользуемся условными операторами. Вот, как будет выглядеть этот код:

<!--#config timefmt="%m" --> <!--#set var="NUM_MONTH" value="$LAST_MODIFIED"--> <!--#if expr="$NUM_MONTH=01" --> <!--#set var="month" value="Января" --> <!--#elif expr="$NUM_MONTH=02" --> <!--#set var="month" value="Февраля" --> <!--#elif expr="$NUM_MONTH=03" --> <!--#set var="month" value="Марта" --> <!--#elif expr="$NUM_MONTH=04" --> <!--#set var="month" value="Апреля" --> <!--#elif expr="$NUM_MONTH=05" --> <!--#set var="month" value="Мая" --> <!--#elif expr="$NUM_MONTH=06" --> <!--#set var="month" value="Июня" --> <!--#elif expr="$NUM_MONTH=07" --> <!--#set var="month" value="Июля" --> <!--#elif expr="$NUM_MONTH=08" --> <!--#set var="month" value="Августа" --> <!--#elif expr="$NUM_MONTH=09" --> <!--#set var="month" value="Сентября" --> <!--#elif expr="$NUM_MONTH=10" --> <!--#set var="month" value="Октября" --> <!--#elif expr="$NUM_MONTH=11" --> <!--#set var="month" value="Ноября" --> <!--#else --> <!--#set var="month" value="Декабря" --> <!--#endif -->




Содержание  Назад  Вперед