3. Операторы Парсера
Формат вызова
^cookie[имя_cookie]
^cookie[имя_cookie;значение]
^cookie[имя_cookie;значение;срок_хранения]
Аргументы
имя_cookie имя cookie.
значение значение, присваиваемое cookie.
срок_хранения срок хранения cookie.
Описание
Оператор cookie с одним аргументом возвращает значение cookie c переданным именем. Оператор cookie с двумя аргументами сохраняет в cookie с указанным именем указанное значение. Третий аргумент срок хранения записанного cookie (по умолчанию устанавливается срок, равный 90 дням).
Если в качестве третьего аргумента введена строка session, то cookie хранится в течение одной сессии. Если задано целочисленное значение, то cookie хранится указанное количество дней.
Примеры
^cookie[test;5] записать в cookie test значение 5 на 90 дней.
^cookie[test;5;7] записать в cookie test значение 5 на 7 дней.
^cookie[test;5;session] записать в cookie test значение 5 на время сессии.
^cookie[test] прочитать значение cookie test и выдать в качестве результата.
Формат вызова
^exec[URI]
^exec[URI;QUERY_STRING]
^exec[URI;QUERY_STRING;PATH_INFO]
Аргументы
URI URI запускаемого CGI-скрипта.
QUERY_STRING задаваемая переменная окружения QUERY_STRING.
PATH_INFO задаваемая переменная окружения PATH_INFO.
Описание
Оператор вызывает CGI-скрипт с указанным URI. Переменным окружения сервера QUERY_STRING и PATH_INFO для вызываемого скрипта присваиваются указанные значения.
Примеры
^exec[/cgi-bin/test.pl;var1=1&var2=2]
Формат вызова
^sendmail[сообщение]
Аргументы
сообщение заголовок и текст передаваемого сообщения.
Описание
Оператор отправляет по электронной почте указанное сообщение. В среде Unix в зависимости от версии ОС вызывается команда /usr/lib/sendmail -t или /usr/sbin/sendmail -t. Сообщение передается на stdin в формате, ожидаемом программой sendmail. В среде Win32 должен быть предварительно определен макрос SMTP_SERVER, содержащий адрес SMTP-сервера. На этот сервер сообщение будет отправлено по протоколу SMTP.
Замечание. Параметр обрабатывается на уровне обработки config (см. п. 1.6).
Замечание. Текст сообщения перед передачей всегда перекодируется в кодировку koi8-r. Кодировку сообщения рекомендуется указывать в его заголовке.
Примеры
|
Пример отправки письма оператором ^sendmail[]
|
|
|
|
^sendmail[from: support@parser.ru to: webmaster@parser.ru subject: Я сделал это! content-type: text/plain^; charset="koi8-r"
Теперь я могу отправлять почту! ]
|
|
|
|
|
Пример определения макроса @SMTP_SERVER
|
|
|
|
@SMTP_SERVER your.smtp.server
|
|
|
|
Формат вызова
^uuencode[данные;имя_файла]
Аргументы
данные данные, которые нужно представить в формате uuencode.
имя_файла имя файла, которое будет указано в заголовке последовательности uuencode.
Описание
Оператор представляет текст в формате uuencode с указанным именем файла в заголовке.
Замечание. Текст обрабатывается на уровне обработки config (см. п. 1.6).
Примеры
|
^sendmail[`from: sender@here.ru to: receiver@there.ru subject: test text attachment content-type: multipart/mixed; boundary="----=_NextPart_000_0005_01C0AB8C.159C2660"
This is a multi-part message in MIME format.
------=_NextPart_000_0005_01C0AB8C.159C2660 Content-Type: text/plain; charset="koi8-r"
Прилагаю тот HTML, о котором мы говорили...
------=_NextPart_000_0005_01C0AB8C.159C2660 Content-Type: text/html; name="chapter01.html" Content-Disposition: attachment; filename="chapter01.html" Content-Transfer-Encoding: uuencode
^uuencode[<TITLE>Глава 1</TITLE>...;chapter01.html]
------=_NextPart_000_0005_01C0AB8C.159C2660- `]
|
|
|
|
|