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



              

Рис.. 9.5. Передача сообщения с сайта Интернет



Рис.. 9.5. Передача сообщения с сайта Интернет



Рисунок 9.5
После того как пользователь введет необходимую для сообщения информацию инажмет кнопку Send, файл формата HTML пошлет данные сценарию языка Perl,который, обработав эту информацию, посредством электронной почты перешлет сообщение в центр обработки сообщений PCS Sprint. Файл WebPage.htmlимеет следующий исходный код: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> <meta http-equiv="Content-Language" content="en-us"> <title>Web Page</title> </head> <body> <p align="center"><font face="Arial" size="6">Web Page</font></p> <p align="center"><font face="Arial" >(Page a Sprint PCS phone)</font></p> <form method="POST" action="http://waplib.com/waplibcgi/ WebPage.pl"> <table width="43%"> <tr> <td width="30%"><font face="Arial" size="4" ><b>Reply-To:</b></font></td> <td width="70%"> <input type="text" name="ReplyTo1" size="3" maxlength="3"> <font face="Arial" size="4">- </font> <input type="text" name="ReplyTo2" size="3" maxlength="3"> <font face="Arial" size="4">-</font> <input type="text" name="ReplyTo3" size="3" maxlength="4"></td> </tr> <tr> <td width="30%"> </td> <td width="70%"></td> </tr> <tr> <td width="30%"><font face="Arial" size="4" ><b>Send To:</b></font></td> <td width="70%"> <input type="text" name="SendTo1" size="3" maxlength="3"> <font face="Arial" size="4">- </font> <input type="text" name="SendTo2" size="3" maxlength="3"> <font face="Arial" size="4">-</font> <input type="text" name="SendTo3" size="3" maxlength="4"></td> </tr> <tr> <td width="30%"><font face="Arial" size="4"><b>Text:</b></font></td> <td width="70%"><textarea rows="4" name="MsgText" cols="20"></textarea></td> </tr> <tr> <td width="30%"> </td> <td width="70%"></td> </tr> <tr> <td width="30%"><input type="submit" value="Send" name="SendButton"></td> <td width="70%"><input type="reset" value="Reset" name="ResetButton"></td> </tr> </table> </form> </body> </html>
Файл формата HTML использует элемент <input> для получения значений переменных ReplyTo, SendTo HMsgText. Элемент <input> используется также для определения формата вводимых данных. Для облегчения ввода данных, имеющихвид телефонных номеров, в файле используется таблица для ввода компонентовтелефонного номера. После того как пользователь введет данные и нажметкнопку Send, в исходном коде происходит передача данных сценарию языка PerlWebPage.pl, исходный код которого приведен ниже: #!/usr/bin/perl require 'DeckUtils.pl'; $mailprog = "/bin/sendmail"; # Get the CGI variables. %cgiVars = &AppUtils::ParseCGIVars(); $ReplyTo1 = $cgiVars{"ReplyTo1"}; $ReplyTo2 = $cgiVars{"ReplyTo2"}; $ReplyTo3 = $cgiVars{"ReplyTo3"}; $ReplyTo = $ReplyTo1; $ReplyTo .= "-"; $ReplyTo .= $ReplyTo2; $ReplyTo .= "-"; $ReplyTo .= $ReplyTo3; $MsgSubject = $ReplyTo; $SendTo1 = $cgiVars{"SendTo1"}; $SendTo2 = $cgiVars{"SendTo2"}; $SendTo3 = $cgiVars{"SendTo3"}; $SendTo = $SendTo1; $SendTo .= $SendTo2; $SendTo .= $SendTo3; $SendTo .= "\@messaging.sprintpcs.com"; $MsgText = $cgiVars{"MsgText"}; open(MAIL, "|$mailprog $SendTo"); print MAIL "Reply-To: $ReplyTo\n"; print MAIL "From: Demo\@waplib.com\n"; print MAIL "To: $SendTo\n"; print MAIL "Subject: $MsgSubject\n\n"; print MAIL "$MsgText\n"; close(MAIL); print "Content-type: text/html\n\n"; print "<HTML>\n"; print "<Body>\n"; print "Message has been sent to: $SendTo\n"; print "</Body>\n"; print "</HTML>\n";
В начале сценария используется функция $cgiVars для извлечения значений параметров. Так как в файле формата HTML данные ReplyTo и SendTo вводятсятремя частями (три части, составляющие телефонный номер), файл должен извлекать значения параметров в переменные ReplyTol, ReplyTo2, ReplyToS,SendTol, SendTo2, SendTo3. Исходный код должен объединить эти значения в переменные ReplyTo И SendTo.
Далее, сценарий создает и пересылает сообщение электронной почты. Приокончании работы сценарий также создает новый файл формата HTML, сообщающий пользователю о том, что сообщение передано.









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