Пособие по написанию WAP-сайтов


Подробнее о сценарии языка Perl MortgageCalcWML.pl



Подробнее о сценарии языка Perl MortgageCalcWML.pl


Как было сказано выше, каждый раз после ввода пользователем всей необходимой по закладной информации, карта CalcPayment активизирует сценарий языкаPerl, который вычисляет и отображает информацию по выплате. Этот сценарийMortgageCalcWML.pl имеет следующий исходный код:

#!/usr/bin/perl

require 'DeckUtils.pl';

%cgiVars = &AppUtils::ParseCGIVars();

$Principal = $cgiVars{"Principal"}; $Interest = $cgiVars{"Interest"}; $Years = $cgiVars{"Years"};

$MonthInt = ($Interest / 12) / 100; $Months = $Years * 12;

$Payment = $Principal * ($MonthInt / (1 - (1 + $MonthInt) ** (-$Months))); $Payment = $Payment * 100; $Payment = (int $Payment) / 100;

$Deck = "Content-type: text/vnd.wap.wml

&lt?xml version=\"1.0\"?&gt &lt!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\" \"http://www.wapforum.org/DTD/wml_1.1.xml\"&gt

&ltwml&gt

&lthead&gt

&ltmeta http-equiv=\"Cache-Control\" content=\"max-age=0\" forua=\"true\"/&gt

&lt/head&gt

&ltcard id=\"Result1\"&gt

&ltdo type=\"accept\" label=\"Done\"&gt &ltgo href=\"../MortgageCalc /MortgageCalc.wml\" /&gt &lt/do&gt

&ltp align=\"left\" mode=\"nowrap\"&gt

Principal: \$\$$Principal&ltbr/&gt Interest(%): $Interest&ltbr/&gt Years: $Years&ltbr/&gt Payment: \$\$$Payment

&lt/p&gt

&lt/card&gt

&lt/wml&gt";

print $Deck;


Первая строка сценария представляет собой комментарий, сообщающий интерпретатору командной строки, где находится интерпретатор языка Perl. Втораястрока информирует интерпретатор языка о том, что этот сценарий требуеттакже сценария языка Perl DeckUtils.pl, который содержит функции, необходимыесценарию для анализа параметров, передаваемых ему из основной деки форматаWML. После того как сценарий извлечет переданные параметры, он преобразовывает количество лет в количество месяцев и вычисляет необходимую выплату.Для избежания ошибок округления, сценарий умножает и затем делит результатна 100.





Начало  Назад  Вперед



Книжный магазин