Hi I am very very new to perl. And after lots of work I did script a perl file to handle a online form (products order form). However, I am stuck at a point. I tried my best but could not get thru.
The form is located at: http://www.kevincoffey.com/order.htm When I select a different shipping adrress, it DOESNOT work! I gave a RADIO button for : Shipping_Address: TRUE=SAME AS ABOVE (i.e. send to adove address) Shipping ADdress: FALSE = send to Floowing address And in the followings cript I gave it with a -- if .. else -- statement.. but no use.. Can someone pls help me? Regards Babul And the first perl file is: ===form1.pl=== #!/usr/bin/perl use CGI; use CGI::Carp qw(fatalsToBrowser); use strict; my ($query, @params, $param, $paramVal); my ($csTravel); my (@allProductQuantities); my (@productIDs, $ID); my (@contactNameFields, @contactAddressFields, @contactOtherFields, $field, $value); my (@shippingNameFields, @shippingAddressFields, @shippingOtherFields); my ($productQuantity, $dollarValue); $CGI::POST_MAX = 40000; $CGI::DISABLE_UPLOADS = 1; $query = new CGI (); $query -> autoEscape (undef); #Get all parameter-value pairs in a referenced hash @params = $query->param (); @allProductQuantities = grep (/^Quantity_for_Product/, @params); @productIDs = (); foreach $param (@allProductQuantities){ ($ID) = ($param =~ /^Quantity_for_Product_(.+)$/); @productIDs = (@productIDs, $ID); } =pod $csTravel = "[EMAIL PROTECTED],[EMAIL PROTECTED]"; open (MAIL, "|/bin/mail -s 'CTS Order' $csTravel"); foreach $param (@params){ $paramVal = $query->param ($param); if ($paramVal){ print MAIL $param, " = ", $paramVal, "\n"; } } close (MAIL); =cut @contactNameFields = qw(Contact_Title Contact_FirstName Contact_LastName); @contactAddressFields = qw( Contact_Organization Contact_StreetAddress1 Contact_Address3 Contact_City1 Contact_State1 Contact_ZipCode1 Contact_Country1); #This variable is not used later @contactOtherFields = qw(Contact_WorkPhone Contact_FAX Contact_Email); @shippingNameFields = qw (Shipping_Title Shipping_FirstName Shipping_LastName); @shippingAddressFields = qw(Shipping_Organization Shipping_StreetAddress Shipping_Address2 Shipping_City Shipping_State Shipping_ZipCode Shipping_Country); print $query->header(); print $query->start_html(-title => 'Your CST Order', -BGCOLOR => "white"); print "<h2>Please check details of your order.</h2>\n"; print qq{<h4><font color = "red">If everything looks OK, please click on the "Submit My Order" Button below.\n If not, please click on the "Back" button of your browser and make your corrections on the previous page.\n</font></h4>}; print $query-> hr, "<b>Your billing address is:</b><br>", $query -> hr; #start a form print "\n"; print $query->start_form(-method=>"POST", -action=>"/cgi-bin/form2.pl"); #Print contact name foreach $field (@contactNameFields){ $value = $query -> param("$field"); print "$value "; print $query -> hidden (-name => "$field", -default => "$value", ); print "\n"; } print $query -> br; #Print contact address foreach $field (@contactAddressFields){ $value = $query -> param("$field"); if ($value){ print $value, $query -> br, "\n"; print $query -> hidden (-name => "$field", -default => "$value", ); print "\n"; } } print $query -> br, "\n"; #Print additional contact information $value = $query -> param("Contact_WorkPhone"); if ($value){ print "Phone: ", $value, $query -> br; print $query -> hidden (-name => "Contact_WorkPhone", -default => "$value", ); print "\n"; } $value = $query -> param("Contact_FAX"); if ($value){ print "Fax: ", $value, $query -> br, "\n"; print $query -> hidden (-name => "Contact_FAX", -default => "$value", ); print "\n"; } $value = $query -> param("Contact_Email"); if ($value){ print "Email: ", $value, $query -> br, "\n"; print $query -> hidden (-name => "Contact_Email", -default => "$value", ); print "\n"; } print $query -> hr, "<b>Your shipping preference is:</b>", $query -> hr; #print "Shipping_Preference", $query -> param ("Shipping_Preference"), "<BR>\n"; $value = $query -> param("Shipping_Preference"); if ($query -> param ("Shipping_Preference") == "TRUE"){ print "SEND TO ABOVE ADDRESS<br>\n"; } else { #A different shipping address #Print contact name foreach $field (@shippingNameFields){ $value = $query -> param("$field"); print "$value "; print $query -> hidden (-name => "$field", -default => "$value", ); print "\n"; } print $query -> br, "\n"; #Print shipping address foreach $field (@shippingAddressFields){ $value = $query -> param("$field"); if ($value){ print $value, $query -> br, "\n"; print $query -> hidden (-name => "$field", -default => "$value", ); print "\n"; } } print $query -> br, "\n"; $value = $query -> param("Shipping_Phone"); if ($value){ print "Phone: ", $value, $query -> br, "\n"; print $query -> hidden (-name => "Shipping_Phone", -default => "$value", ); print "\n"; } } #else ends print $query -> hr, "<b>Details of your order are given below: </b>", $query -> hr, "\n"; #print join ("<br>", @allProductQuantities), "<br>"; #print "ProductIDs = ", join ("<br>", @productIDs), "<br>\n"; foreach $ID (@productIDs){ # print "Inside foreach $ID<br>"; $productQuantity = $query->param("Quantity_for_Product_$ID"); $dollarValue = $query->param("Dollar_Value_for_$ID"); if ($productQuantity){ print "Product $ID: ", "No of items = $productQuantity, "; print $query -> hidden (-name => "Quantity_for_Product_$ID", -default => "$productQuantity", ); print "Total value = \$", "$dollarValue\n"; print $query -> hidden (-name => "Dollar_Value_for_$ID", -default => "$dollarValue", ); print $query -> br, "\n"; } } print $query -> hr, "\n"; print "<b>Total number of products ordered = ", $query -> param ("Total_Quantity_of_Products_Ordered"), "<br></b>\n"; print $query -> hidden (-name => "Total_Quantity_of_Products_Ordered", -default => ($query -> param ("Total_Quantity_of_Products_Ordered")) ); print "\n<b>Total cost of products ordered = \$", $query -> param("Total_Dollar_Amount_of_Products_Ordered"), "<br></b>\n"; print $query -> hidden (-name => "Total_Dollar_Amount_of_Products_Ordered", -default => ($query -> param ("Total_Dollar_Amount_of_Products_Ordered")) ); print "\n<b>Total sales tax = \$", $query -> param ("Total_Amount_of_Tax"), "<br></b>\n"; print $query -> hidden (-name => "Total_Amount_of_Tax", -default => ($query -> param ("Total_Amount_of_Tax")) ); print "\n<b>Total shipping cost = \$", $query -> param ("Total_Dollar_Amount_of_Shipping"), "<br></b>\n"; print $query -> hidden (-name => "Total_Dollar_Amount_of_Shipping", -default => ($query -> param ("Total_Dollar_Amount_of_Shipping")) ); print "\n<b>Total amount of sale = \$",$query -> param ("Total_Dollar_Amount_of_Sale"), "<br>\n"; print $query -> hidden (-name => "Total_Dollar_Amount_of_Sale", -default => ($query -> param ("Total_Dollar_Amount_of_Sale")) ); print "<BR>\n"; if ($query -> param ("Check_or_Money_Order")){ print qq{You are paying by check or money order.\n}; print qq{Please print the order page and mail it to the address given below.\n}; print qq{We will send your order within a working days after receiving payment in most cases.\n}; print $query -> hidden (-name => "Check_or_Money_Order", -default => ($query -> param ("Check_or_Money_Order")) ); print "<BR>\n"; } if ($query -> param ("VISA")){ print qq{You are paying by VISA.\n}; print $query -> hidden (-name => "VISA", -default => ($query -> param ("VISA")) ); print "<BR>\n"; print qq{Your card number: }, $query->param("Credit_Card_Number"), "<BR>\n"; print $query -> hidden (-name => "Credit_Card_Number", -default => ($query -> param ("Credit_Card_Number")) ); print "<BR>\n"; print qq{The expiration date is: }, $query->param("Credit_Card_Expiration_Date"), "<BR>\n"; print $query -> hidden (-name => "Credit_Card_Expiration_Date", -default => ($query -> param ("Credit_Card_Expiration_Date")) ); print "<BR>\n"; print qq{The name on the credit card is: }, $query->param("Credit_Card_Imprinted_with_Name_of"), "<BR>\n"; print qq{We will send your order within a working days in most cases.<BR>\n}; print $query -> hidden (-name => "Credit_Card_Imprinted_with_Name_of", -default => ($query -> param ("Credit_Card_Imprinted_with_Name_of")) ); print "<BR>\n"; } if ($query -> param ("MasterCard")){ print qq{You are paying by Mastercard.\n}; print $query -> hidden (-name => "MasterCard", -default => ($query -> param ("MasterCard")) ); print "<BR>\n"; print qq{Your card number: }, $query->param("Credit_Card_Number"), "<BR>\n"; print $query -> hidden (-name => "Credit_Card_Number", -default => ($query -> param ("Credit_Card_Number")) ); print "<BR>\n"; print qq{The expiration date is: }, $query->param("Credit_Card_Expiration_Date"), "<BR>\n"; print $query -> hidden (-name => "Credit_Card_Expiration_Date", -default => ($query -> param ("Credit_Card_Expiration_Date")) ); print $query -> hidden (-name => "Credit_Card_Expiration_Date", -default => ($query -> param ("Credit_Card_Expiration_Date")) ); print "<BR>\n"; print qq{The name on the credit card is: }, $query->param("Credit_Card_Imprinted_with_Name_of"), "<BR>\n"; print $query -> hidden (-name => "Credit_Card_Imprinted_with_Name_of", -default => ($query -> param ("Credit_Card_Imprinted_with_Name_of")) ); print "<BR>\n"; print qq{Your order will ship within 48 hours of receipt via priority mail, which typically delivers within 3 days.<BR>\n}; } $value = $query->param ("Questions"); if ($value){ print qq{Questions: $value <BR>\n}; print $query -> hidden (-name => "Questions", -default => ($query -> param ("Questions")) ); } print "<BR>\n", $query->submit(-name=>'Submit My Order'); print $query->endform, "\n"; print $query -> hr, "\n"; print $query->end_html (); =====end of form1.pl=== -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>