home *** CD-ROM | disk | FTP | other *** search
/ PC World 1999 May / PCWorld_1999-05_cd.bin / Komunik / MSIE5 / ieak5.exe / RCDATA / CABINET / signup01.pl < prev    next >
Perl Script  |  1999-02-24  |  3KB  |  96 lines

  1. #!/usr/bin/perl
  2. # Written by Edward C Kubaitis
  3.  
  4.  
  5. # The host URL of the Signup Files
  6. $hostURL="http://myserver/";
  7.  
  8. # Parse the CGI input
  9. &parse_input;
  10.  
  11. # Start HTML output
  12. &startHTML;
  13.  
  14. # Display the HTML head
  15. &headHTML;
  16.  
  17. # Display the HTML body
  18. &bodyHTML;
  19.  
  20. # End HTML output
  21. &endHTML;
  22.  
  23. # Exit the CGI
  24. &quit;
  25.  
  26. ##########################################################
  27. sub startHTML {
  28.     print "Content-type: text/html\n\n";print "<HTML>\n";
  29. }
  30. ##########################################################
  31. sub endHTML {
  32.     print "</html>\n";
  33. }
  34. ##########################################################
  35. sub quit {
  36.     exit(0);
  37. }
  38. ##########################################################
  39. sub parse_input {
  40.     @pairs = split(/&/, $ENV{'QUERY_STRING'});
  41.  
  42.     foreach $pair (@pairs) {
  43.        ($name, $value) = split(/=/, $pair);
  44.     $BACKURL=$BACKURL+"$name=$value\&";
  45.        # Un-Webify plus signs and %-encoding
  46.        $value =~ tr/+/ /;
  47.           $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
  48.           $value =~ s/<!--(.|\n)*-->//g;
  49.           if ($allow_html != 1) {
  50.           $value =~ s/<([^>]|\n)*>//g;
  51.           }
  52.          if ($value eq ""){$value=" ";}
  53.        $FORM{$name} = $value;
  54.     
  55.     }
  56. chop($BACKURL);
  57. }
  58. ##########################################################
  59. sub bodyHTML {
  60.  
  61. print "<BODY  bgColor=THREEDFACE color=WINDOWTEXT>\n";
  62. print "<FONT style=\"font: 8pt ' ms sans serif' black\">\n";
  63. print "<FORM NAME=PAGEID ACTION=PAGE1 STYLE=background:transparent></FORM>\n";
  64. print "<FORM NAME=BACK ACTION=\"\" STYLE=background:transparent></FORM>\n";
  65. print "<FORM NAME=PAGETYPE ACTION=\"\" STYLE=background:transparent></FORM>\n";
  66. print "<FORM NAME=NEXT ACTION=$hostURL/signup02.pl STYLE=background:transparent>\n";
  67. #print "<P style="position: relative; margin-top=-10;"><B>Welcome To IEAK Sample Signup Server</B>\n";
  68. print "<TABLE style=\"font: 8pt ' ms sans serif' black\" cellpadding=0 cellspacing=0>\n";
  69. print "<tr><td>First Name<br><INPUT NAME=\"USER_FIRSTNAME\" TYPE=\"INPUT\" VALUE=\"$FORM{'USER_FIRSTNAME'}\"></td>\n";
  70. print "<td>Last Name<br><INPUT NAME=\"USER_LASTNAME\" TYPE=\"INPUT\" VALUE=\"$FORM{'USER_LASTNAME'}\"></td></tr>\n";
  71. print "<tr><td colspan=2>Company<br><INPUT NAME=\"USER_COMPANYNAME\" TYPE=\"INPUT\" SIZE=43 VALUE=\"$FORM{'USER_COMPANYNAME'}\"></td></tr>\n";
  72. print "<tr><td colspan=2>Address<br><INPUT NAME=\"USER_ADDRESS\" TYPE=\"INPUT\" SIZE=43 VALUE=\"$FORM{'USER_ADDRESS'}\"></td></tr>\n";
  73. print "<tr><td colspan=2>Additional Address Information (Optional)<br>\n";
  74. print "<INPUT NAME=\"USER_MOREADDRESS\" TYPE=\"INPUT\" SIZE=43 VALUE=\"$FORM{'USER_MOREADDRESS'}\"></td></tr>\n";
  75. print "<tr><td>City<br><INPUT NAME=\"USER_CITY\" TYPE=\"INPUT\" VALUE=\"$FORM{'USER_CITY'}\">\n";
  76. print "</td><td>State or province<br><input type=input name=USER_STATE VALUE=\"$FORM{'USER_STATE'}\"></td></tr>\n";
  77. print "<tr><td>ZIP or postal code<br><INPUT NAME=\"USER_ZIP\" TYPE=\"INPUT\" VALUE=\"$FORM{'USER_ZIP'}\"></td>\n";
  78. print "<td>Phone number<br><INPUT NAME=\"USER_PHONE\" TYPE=\"INPUT\" VALUE=\"$FORM{'USER_PHONE'}\"></td></tr>\n";
  79. print "</table>\n";
  80. print "</FORM>\n";
  81. print "-->\n";
  82. print "</BODY>\n";
  83.  
  84. }
  85. ##########################################################
  86. sub headHTML {
  87.  
  88.  
  89. print "<HEAD>\n";
  90. print "<TITLE>IEAK Sample</TITLE>\n";
  91. print "</HEAD>\n";
  92.  
  93.  
  94. }
  95. ##########################################################
  96.