home *** CD-ROM | disk | FTP | other *** search
/ PC World 1999 May / PCWorld_1999-05_cd.bin / Komunik / MSIE5 / ieak5.exe / RCDATA / CABINET / signup03.pl < prev    next >
Perl Script  |  1999-02-24  |  12KB  |  227 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. $BACKURL=&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.     $ABACKURL=$ABACKURL."$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($ABACKURL);return $ABACKURL;
  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.  
  64. print "<FORM NAME=PAGEID ACTION=PAGE3 STYLE=background:transparent></FORM>\n";
  65. print "<FORM NAME=BACK ACTION=\"$hostURL/signup02.pl?$BACKURL\" STYLE=background:transparent></FORM>\n";
  66. print "<FORM NAME=PAGETYPE ACTION=\"\" STYLE=background:transparent></FORM>\n";
  67. print "<FORM NAME=NEXT ACTION=$hostURL/signup04.pl STYLE=background:transparent>\n";
  68.  
  69. print "<DIV ID=header><B><FONT COLOR=navy>Select A Payment Method</FONT></B><BR>\n";
  70. print "<select NAME=PAYMENT_METHOD size=1 onchange=movePage(this.options[this.selectedIndex].value)>\n";
  71. print "<option value=0>Select a choice</option><option value=1>Visa</option>\n";
  72. print "<option value=2>Mastercard</option><option value=3>American Express</option>\n";
  73. print "<option value=4>Phone Bill</option><option value=5>Bill Through Mail</option>\n";
  74. print "<select><br></FONT></DIV>\n";
  75.  
  76. print "<DIV ID=page0 STYLE=\"visibility: visible\"><A NAME=p0></A></font></DIV>\n";
  77.  
  78. print "<DIV ID=page1 STYLE=\"visibility: visible\"><A NAME=p1></A><center>\n";
  79. print "<table border=0  height=230  style=\"font: 8pt ' ms sans serif' black\">\n";
  80. print "<tr><td colspan=2><b>Visa</b></td></tr> \n";
  81. print "<tr><td colspan=2>Credit Card Number:<br><INPUT NAME=V_PAYMENT_CARDNUMBER size=40 TYPE=INPUT VALUE=\"$FORM{'V_PAYMENT_CARDNUMBER'}\"></td></tr>\n";
  82. print "<tr><td>Expiration Month:<br><INPUT NAME=V_PAYMENT_EXMONTH TYPE=INPUT size=27 VALUE=\"$FORM{'V_PAYMENT_EXMONTH'}\">\n";
  83. print "</td><td>Expiration Year:<br><INPUT NAME=V_PAYMENT_EXYEAR TYPE=INPUT size=11 VALUE=\"$FORM{'V_PAYMENT_EXYEAR'}\"></td></tr>\n";
  84. print "<tr><td colspan=2>Name that Appears on Card:<br><INPUT NAME=V_PAYMENT_CARDHOLDER size=40 TYPE=INPUT VALUE=\"$FORM{'V_PAYMENT_CARDHOLDER'}\"></td></tr>\n";
  85. print "<tr><td>Billing address for the card:<br><INPUT NAME=V_PAYMENT_BILLADDRESS size=27 TYPE=INPUT VALUE=\"$FORM{'V_PAYMENT_BILLADDRESS'}\">\n";
  86. print "</td><td>ZIP or postal code:<br><INPUT NAME=V_PAYMENT_BILLZIP size=11 TYPE=INPUT VALUE=\"$FORM{'V_PAYMENT_BILLZIP'}\"></td></tr>\n";
  87. print "</table></center></DIV>\n";
  88.  
  89. print "<DIV ID=page2 STYLE=\"visibility: visible\"><A NAME=p2></A><p>\n";
  90. print "<center><table border=0  height=230  style=\"font: 8pt ' ms sans serif' black\">\n";
  91. print "<tr><td colspan=2><b>Master Card</b></td></tr> \n";
  92. print "<tr><td colspan=2>Credit Card Number:<br><INPUT NAME=MC_PAYMENT_CARDNUMBER size=40  TYPE=INPUT VALUE=\"$FORM{'MC_PAYMENT_CARDNUMBER'}\"></td></tr>\n";
  93. print "<tr><td>Expiration Month:<br><INPUT NAME=MC_PAYMENT_EXMONTH TYPE=INPUT size=27 VALUE=\"$FORM{'MC_PAYMENT_EXMONTH'}\">\n";
  94. print "</td><td>Expiration Year:<br><INPUT NAME=MC_PAYMENT_EXYEAR TYPE=INPUT size=11 VALUE=\"$FORM{'MC_PAYMENT_EXYEAR'}\"></td></tr>\n";
  95. print "<tr><td colspan=2>Name that Appears on Card:<br><INPUT NAME=MC_PAYMENT_CARDHOLDER size=40 TYPE=INPUT VALUE=\"$FORM{'MC_PAYMENT_CARDHOLDER'}\"></td></tr>\n";
  96. print "<tr><td>Billing address for the card:<br><INPUT NAME=MC_PAYMENT_BILLADDRESS size=27 TYPE=INPUT VALUE=\"$FORM{'MC_PAYMENT_BILLADDRESS'}\">\n";
  97. print "</td><td>ZIP or postal code:<br><INPUT NAME=MC_PAYMENT_BILLZIP size=11 TYPE=INPUT VALUE=\"$FORM{'MC_PAYMENT_BILLZIP'}\"></td></tr>\n";
  98. print "</table></center></DIV>\n";
  99.  
  100. print "<DIV ID=page3 STYLE=\"visibility: visible\"><A NAME=p3></A>\n";
  101. print "<center><table border=0  height=230  style=\"font: 8pt ' ms sans serif' black\">\n";
  102. print "<tr><td colspan=2><b>American Express</b></td></tr> \n";
  103. print "<tr><td colspan=2>Credit Card Number:<br><INPUT NAME=AE_PAYMENT_CARDNUMBER size=40 TYPE=INPUT VALUE=\"$FORM{'AE_PAYMENT_CARDNUMBER'}\"></td></tr>\n";
  104. print "<tr><td>Expiration Month:<br><INPUT NAME=AE_PAYMENT_EXMONTH TYPE=INPUT size=27 VALUE=\"$FORM{'AE_PAYMENT_EXMONTH'}\">\n";
  105. print "</td><td>Expiration Year:<br><INPUT NAME=AE_PAYMENT_EXYEAR TYPE=INPUT size=11 VALUE=\"$FORM{'AE_PAYMENT_EXYEAR'}\"></td></tr>\n";
  106. print "<tr><td colspan=2>Name that Appears on Card:<br><INPUT NAME=AE_PAYMENT_CARDHOLDER  size=40 TYPE=INPUT VALUE=\"$FORM{'AE_PAYMENT_CARDHOLDER'}\"></td></tr>\n";
  107. print "<tr><td>Billing address for the card:<br><INPUT NAME=AE_PAYMENT_BILLADDRESS size=27 TYPE=INPUT VALUE=\"$FORM{'AE_PAYMENT_BILLADDRESS'}\">\n";
  108. print "</td><td>ZIP or postal code:<br><INPUT NAME=AE_PAYMENT_BILLZIP size=11 TYPE=INPUT VALUE=\"$FORM{'AE_PAYMENT_BILLZIP'}\"></td></tr>\n";
  109. print "</table><center></DIV>\n";
  110.  
  111. print "<DIV ID=page4 STYLE=\"visibility: visible\"><A NAME=p4></A>\n";
  112. print "<center><table border=0  height=230  style=\"font: 8pt ' ms sans serif' black\">\n";
  113. print "<tr><td><b>Phone Bill</b></td></tr> \n";
  114. print "<tr><td>Name on phone bill:<br><INPUT NAME=PB_PAYMENT_BILLNAME size=40  TYPE=INPUT VALUE=\"$FORM{'PB_PAYMENT_BILLNAME'}\"></td></tr>\n";
  115. print "<tr><td>Phone account number:<br><INPUT NAME=PB_PAYMENT_BILLPHONE TYPE=INPUT size=40 VALUE=\"$FORM{'PB_PAYMENT_BILLPHONE'}\"></td></tr>\n";
  116. print "<tr><td><br> </td></tr>\n";
  117. print "<tr><td><br> </td></tr>\n";
  118. print "<tr><td><br> </td></tr>\n";
  119. print "</table></center></DIV>\n";
  120.  
  121. print "<DIV ID=page5 STYLE=\"visibility: visible\"><A NAME=p5></A>\n";
  122. print "<center><table border=0  height=230  style=\"font: 8pt ' ms sans serif' black\">\n";
  123. print "<tr><td colspan=2><b>Send bill to home</b></td></tr> \n";
  124. print "<tr><td colspan=2>Address:<br><INPUT NAME=BH_PAYMENT_BILLADDRESS size=40  TYPE=INPUT VALUE=\"$FORM{'BH_PAYMENT_BILLADDRESS'}\"></td></tr>\n";
  125. print "<tr><td colspan=2>Additional address information (optional):<br><INPUT NAME=BH_PAYMENT_BILLEXADDRESS TYPE=INPUT VALUE=\"$FORM{'BH_PAYMENT_BILLEXADDRESS'}\" size=40></td></tr>\n";
  126. print "<tr><td colspan=2>City:<br><INPUT NAME=BH_PAYMENT_BILLCITY  size=40 TYPE=INPUT VALUE=\"$FORM{'BH_PAYMENT_BILLCITY'}\"></td></tr>\n";
  127. print "<tr><td>State or province:<br><INPUT NAME=BH_PAYMENT_BILLSTATE size=27 TYPE=INPUT VALUE=\"$FORM{'BH_PAYMENT_BILLSTATE'}\">\n";
  128. print "</td><td>ZIP or postal code:<br><INPUT NAME=BH_PAYMENT_BILLZIP size=11 TYPE=INPUT VALUE=\"$FORM{'BH_PAYMENT_BILLZIP'}\"></td></tr>\n";
  129. print "</table></center></DIV>\n";
  130.  
  131. print "<DIV ID=page6 STYLE=\"visibility: visible\"><A NAME=p6></A>\n";
  132. print "<table border=0 width=428 height=230 bgcolor=THREEDFACE><tr><td><br> </td></tr></table>\n";
  133. print "</DIV>\n";
  134.  
  135. print "<INPUT TYPE=\"HIDDEN\" NAME=\"USER_FIRSTNAME\" VALUE=\"$FORM{'USER_FIRSTNAME'}\">\n";
  136. print "<INPUT TYPE=\"HIDDEN\" NAME=\"USER_LASTNAME\" VALUE=\"$FORM{'USER_LASTNAME'}\">\n";
  137. print "<INPUT TYPE=\"HIDDEN\" NAME=\"USER_ADDRESS\" VALUE=\"$FORM{'USER_ADDRESS'}\">\n";
  138. print "<INPUT TYPE=\"HIDDEN\" NAME=\"USER_MOREADDRESS\" VALUE=\"$FORM{'USER_MOREADDRESS'}\">\n";
  139. print "<INPUT TYPE=\"HIDDEN\" NAME=\"USER_CITY\" VALUE=\"$FORM{'USER_CITY'}\">\n";
  140. print "<INPUT TYPE=\"HIDDEN\" NAME=\"USER_STATE\" VALUE=\"$FORM{'USER_STATE'}\">\n";
  141. print "<INPUT TYPE=\"HIDDEN\" NAME=\"USER_ZIP\" VALUE=\"$FORM{'USER_ZIP'}\">\n";
  142. print "<INPUT TYPE=\"HIDDEN\" NAME=\"USER_PHONE\" VALUE=\"$FORM{'USER_PHONE'}\">\n";
  143. print "<INPUT TYPE=\"HIDDEN\" NAME=\"AREACODE\" VALUE=\"$FORM{'AREACODE'}\">\n";
  144. print "<INPUT TYPE=\"HIDDEN\" NAME=\"COUNTRYCODE\" VALUE=\"$FORM{'COUNTRYCODE'}\">\n";
  145. print "<INPUT TYPE=\"HIDDEN\" NAME=\"USER_FE_NAME\" VALUE=\"$FORM{'USER_FE_NAME'}\">\n";
  146. print "<INPUT TYPE=\"HIDDEN\" NAME=\"SIGNED_PID\" VALUE=\"$FORM{'SIGNED_PID'}\">\n";
  147. print "<INPUT NAME=GUID value=$FORM{'GUID'} TYPE=HIDDEN>\n";
  148. print "<INPUT NAME=OFFERID value=$FORM{'OFFERID'} TYPE=HIDDEN>\n";
  149. print "<INPUT NAME=BILLING1 value=$FORM{'BILLING1'} TYPE=HIDDEN>\n";
  150. print "<INPUT NAME=BILLING2 value=$FORM{'BILLING2'} TYPE=HIDDEN>\n";
  151. print "<INPUT NAME=CUSTPAY1 value=$FORM{'CUSTPAY1'} TYPE=HIDDEN>\n";
  152. print "<INPUT NAME=CUSTPAY2 value=$FORM{'CUSTPAY2'} TYPE=HIDDEN>\n";
  153. print "<INPUT NAME=CUSTPAY3 value=$FORM{'CUSTPAY3'} TYPE=HIDDEN>\n";
  154. print "</FORM>\n";
  155. print "</BODY>\n";
  156.  
  157. }
  158. ##########################################################
  159. sub headHTML {
  160.  
  161.  
  162. print "<HEAD>\n";
  163. print "<TITLE>IEAK Sample</TITLE>\n";
  164.  
  165. print "<LINK REL=\"Stylesheet\" HREF=\"/_res/css/tone.css\" TYPE=\"text/css\">\n";
  166. print "<STYLE>\n";
  167. print "  <!--\n";
  168. print "    H2 {color: darkgreen; }\n";
  169. print "    H3 {text-align: center; color: black; font: 14pt sans-serif; font-weight: bold}\n";
  170. print "    TD {font: arial}\n";
  171. print "    #header {position: absolute; top: 10px; left: 5px}\n";
  172. print "    #page0, #page1, #page2, #page3, #page4, #page5, #page6 {position: absolute; width: 430px; top: 50px; left: 5px; border: 1px black solid; font: 10pt arial, geneva, sans-serif}\n";
  173. print "    OL {font: 8pt sans-serif}\n";
  174. print "  -->\n";
  175. print "</STYLE>\n";
  176. print "  <SCRIPT LANGUAGE=\"JavaScript\">     \n"; 
  177. print "  <!--\n";
  178. print "  var pageCount = 6\n";
  179. print "  var allSupport = (document.all!=null)\n";
  180. print "  var layersSupport = (document.layers!=null)\n";
  181.  
  182. print "function getElement(elName) {    \n";
  183. print "   // Get an element from its ID\n";
  184. print "   if (allSupport)      \n";
  185. print "    return document.all[elName]  \n";  
  186. print "   else\n";
  187. print "     return document.layers[elName] \n"; 
  188. print " }\n";
  189.  
  190. print "function setVisibility(el, bDisplay) {    \n";
  191. print "   // Hide or show to tip\n";
  192. print "   if (bDisplay)      \n";
  193. print "     if (allSupport)        \n";
  194. print "       el.style.visibility = \"visible\" \n";
  195. print "     else        \n";
  196. print "       el.visibility = \"show\";    \n";
  197. print "     else      \n";
  198. print "       if (allSupport)\n";
  199. print "         el.style.visibility = \"hidden\" \n";     
  200. print "       else        \n";
  201. print "         el.visibility = \"hidden\"\n";
  202. print " }\n";
  203.  
  204. print "function movePage(what) {\n";
  205. print "   if ((allSupport) || (layersSupport)) {\n";
  206. print "     for (var i=0; i <=pageCount; i++) \n";
  207. print "     setVisibility(getElement(\"page\"+i),what==i)\n";
  208. print "     return false\n";
  209. print "   } else\n";
  210. print "return true\n";
  211. print "}\n";
  212.   
  213. print "function doResize() {\n";
  214. print "location.reload()\n";
  215. print "}\n";
  216. print "// Work-around Netscape resize bug\n";
  217. print "if (layersSupport)\n";
  218. print "setTimeout('window.onresize=doResize',1000)\n";
  219. print "// -->\n";
  220. print "</SCRIPT>\n";
  221.  
  222. print "</HEAD>\n";
  223.  
  224.  
  225. }
  226. ##########################################################
  227.