Рассмотрение Perl-сиенария HotelAvailWML.pl
После того как пользователь выберет гостиницу, программный код приложенияHotellnfo запускает Peri-сценарий, создающий WML-страницу, которая выводитприглашение пользователю на ввод регистрационных данных. Для приема данной информации приложение могло бы использовать или WML-страницу, илиPeri-сценарий; однако, чтобы облегчить проверку вводимой пользователем информации, предпочтение отдается Peri-сценарию. Peri-сценарий HotelAvailWML.plреализуется с помощью следующего программного кода:
#!/usr/bin/perl
$HotelCode = $ENV{'QUERY_STRING'};
$Deck = "Content-type: text/vnd.wap.wml
<?xml version=\"1.0\"?> <!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\" \"http://www.wapforum.org/DTD/wml_1.1.xml\">
<wml>
<head>
<meta http-equiv=\"Cache-Control\" content=\"max-age=0\" forua=\"true\"/>
</head>
<card id=\"Avail\">
<do type=\"accept\" label=\"Edit\"> <noop /> </do>
<do type=\"options\" label=\"Check\"> <go method=\"post\" href=\"CheckAvailWML.pl\"> <postfield name=\"HotelCode\" value=\" \$(HotelCode)&\"/> <postfield name=\"CheckInDate\" value=\" \$(CheckInDate:noesc)&\"/> <postfield name=\"CheckOutDate\" value=\" \$(CheckOutDate:noesc)&\"/> <postfield name=\"NumGuests\" value=\" \$(NumGuests)\"/> </go> </do>
<p align=\"center\">
Web Inns<br/> $HotelCode
</p>
<p align=\"left\" mode=\"nowrap\">
<select>
<option onpick=\"#GetCheckIn\">Check In (mm/dd/yy): \$(CheckInDate)</option> <option onpick=\"#GetCheckOut\">Check Out (mm/dd/yy): \$(CheckOutDate)</option> <option onpick=\"#GetNumber\">Number of guests: \$(NumGuests)</option>