I'm trying to parse a form with the post method.  I have
written a 
                    script(formparser.pl) that parses the info and appends
it to a flat file. 
                    It then reads the file and outputs the information into
two html tables 
                    followed by a third table that is the form you could use
to do it again. 

                    On the unix box I have checked the script via (perl -c
formparser.pl) and 
                    the syntax is okay.  But when I go to the html page with
the form and try to 
                    use it, it says that there is a problem.  I'm nearly
sure the paths are 
                    correct and permissions have all been set. 

                    Any help would be greatly appreciated.  Below is a link
to the html form 
                    followed by my script (formparser.pl). 
                    byron 

                    http://cgi.wc.pima.edu/~bwise/form2.html 



                   
###############################################################################


                    #!/usr/bin/perl 

                    print "Content-type:text/html\n\n"; 

                    $file='/home/bwise/public_html/weather.data'; 


                    read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'}); 
                    @pairs = split(/&/,$buffer); 
                    foreach $pair (@pairs)  { 
                        ($name, $value)=split(/=/,$pair); 
                        $value=~tr/+/ /; 
                       
$value=~s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg; 
                        $value=~s/\n/ /g; 
                        $value=~s/\r//g; 
                        $value=~s/\cM//g; 
                        $form{$name}=$value; 
                                  } 

                    open(DATA, ">>formparser.data") or die ("Cannot open
formparser.data: $!"); 
                    flock(DATA,2); 

                    while ( ($mykey,$myvalue) = each(%form) )  { 
                       print DATA "$myvalue:"; 
                    } 
                    close (DATA); 


                    print <<Begin_HTML; 
                        
                    <html><head></head><body> 
                    <table><tr><td bgcolor="#cccccc">DATA ENTRIES</td></tr> 
                   
<tr><td><center>DATE</center></td><td><center>TIME</center></td><td><center>TEMP</center></td><td><center>TYPE</center></td></tr>


                    Begin_HTML 

                    $tottemp=0; 
                    $avgtemp=0; 
                    open(DATA, "$file") or die ("Cannot open $file: $!"); 
                    while (<DATA>)    { 
                        chomp; 
                        ($month,$day,$year,$time,$when,$temp,$type)=split
(/:/); 
                        
                        print "<tr><td
bgcolor='#ffffff'>$month/$day/$year</td><td>$time 
                    $when</td><td>$temp</td><td>$type</td></tr>","\n"; 

                        
                        if ($type eq "clear")    { 
                           push(@clear, $type); 
                                      } 
                        if ($type eq "tornado")    { 
                           push(@tornado, $type); 
                                      } 
                        
                        if ($type eq "cloudy")    { 
                           push(@cloudy, $type); 
                                      } 
                        
                        if ($type eq "rain")    { 
                           push(@rain, $type); 
                                      } 
                        if ($type eq "hail")    { 
                           push(@hail, $type); 
                                      } 
                        
                        if ($type eq "sleet")    { 
                           push(@sleet, $type); 
                                      } 
                        if ($type eq "snow")    { 
                           push(@snow, $type); 
                                      } 
                        
                        if ($type eq "fog")    { 
                           push(@fog, $type); 
                                      } 
                        
                        if ($type eq "oobleck")    { 
                           push(@oobleck, $type); 
                                      } 
                        $a=@temp; 
                        $tottemp = $tottemp + $temp; 
                        $avgtemp = $tottemp/$a; 
                    } 

                    $cl=@clear;    #####THESE 9 LINES GET THE LENGTH OF THE
ARRAYS SO I 
                    $to=@tornado;  #####CAN USE THEM FOR THE NUMBER OF
OCCURENCES BELOW 
                    $clo=@cloudy; 
                    $ra=@rain; 
                    $ha=@hail; 
                    $sl=@sleet; 
                    $sn=@snow; 
                    $fo=@fog; 
                    $oo=@oobleck; 

                    print <<Begin_HTML; 


                    ####################THIS IS A TABLE THAT LISTS THE
OCCURENCES OF EACH TYPE 
                    <TABLE border=0 cellpadding=0 cellspacing=5
bgcolor="#cccccc" width="400px"> 
                    <tr><td> 
                    <table border=0 cellpadding=3 cellspacing=1
width="400px"> 
                    <tr> 
                        <td bgcolor="#cccccc"><center>ORGANIZED
DATA</center></td> 
                    </tr> 
                    <tr> 
                        <td>Average Temperature is: $avgtemp</td> 
                    </tr> 
                    <tr> 
                        <td bgcolor="#ffffff">Clear: $cl</td> 
                    </tr> 
                    <tr> 
                        <td bgcolor="#ffffff">Tornado: $to</td> 
                    </tr> 
                    <tr> 
                        <td bgcolor="#ffffff">Cloudy: $clo</td> 
                    </tr> 
                    <tr> 
                        <td bgcolor="#ffffff">Rain: $ra</td> 
                    </tr> 
                    <tr> 
                        <td bgcolor="#ffffff">Hail: $ha</td> 
                    </tr> 
                    <tr> 
                        <td bgcolor="#ffffff">Sleet: $sl</td> 
                    </tr> 
                    <tr> 
                        <td bgcolor="#ffffff">Snow: $sn</td> 
                    </tr> 
                    <tr> 
                        <td bgcolor="#ffffff">Fog: $fo</td> 
                    </tr> 
                    <tr> 
                        <td bgcolor="#ffffff">Oobleck: $oo</td> 
                    </tr> 
                    </table> 
                    </td> 
                    </tr> 
                    </table> 


                    #######THIS IS THE FORM AGAIN INCASE YOU WANT TO RUN IT
AGAIN 
                    <form ACTION="/cgi-bin/formparser.pl" METHOD="POST"> 
                    <TABLE border=0 cellpadding=0 cellspacing=5
bgcolor="#cccccc" width="400px"> 

                    <tr><td> 
                        <table border=0 cellpadding=3 cellspacing=1
width="400px"> 
                        <tr> 
                           <td bgcolor="#cccccc"><center><b>Current
Weather</b></center></td> 
                        </tr> 
                        <tr> 
                           <td bgcolor="#ffffff">Below is a form intended
for your use.   
                           Please fill out all fields with the appropriate
data. 
                           Upon completion, use the submit button.  This
will allow you to see a 
                    collection of data from other        users.</td> 
                        </tr> 

                        <tr> 
                           <td bgcolor="#ffffff"><li>Please enter the month
and day as two digit 
                    numbers, and the &nbsp;&nbsp;year as four: <br><center> 
                           Month&nbsp;<INPUT TYPE="text" NAME="month"
SIZE="7">&nbsp;&nbsp; 
                           Day&nbsp;<INPUT TYPE="text" NAME="day"
SIZE="7">&nbsp;&nbsp; 
                           Year&nbsp;<INPUT TYPE="text" NAME="year"
SIZE="7"></center><br><br> 

                           <li>Please enter the hour (12 hour
time):<br><center><INPUT TYPE="text" 
                    NAME="time" SIZE="7"> 
                           <INPUT TYPE="radio" NAME="when"
VALUE="am">&nbsp;AM 
                           <INPUT TYPE="radio" NAME="when"
VALUE="pm">&nbsp;PM</center><br><br>    
                           <li>Please enter the temperature in Fahrenheit:
<INPUT TYPE="text" 
                    NAME="temp" SIZE="7"><br><br> 
                        
                        
                           <li>Enter the type of weather:<br> 
                        
                        
                               <INPUT TYPE="radio" NAME="type"
VALUE="clear">Clear<br> 
                        
                               <INPUT TYPE="radio" NAME="type"
VALUE="tornado">Tornadoes<br> 
                        
                        
                               <INPUT TYPE="radio" NAME="type"
VALUE="cloudy">Cloudy<br> 
                        
                        
                               <INPUT TYPE="radio" NAME="type"
VALUE="rain">Rain<br> 
                        
                        
                               <INPUT TYPE="radio" NAME="type"
VALUE="hail">Hail<br> 
                        
                        
                               <INPUT TYPE="radio" NAME="type"
VALUE="sleet">Sleet<br> 
                        
                        
                               <INPUT TYPE="radio" NAME="type"
VALUE="snow">Snow<br> 
                        
                        
                               <INPUT TYPE="radio" NAME="type"
VALUE="fog">Fog<br> 
                        
                        
                               <INPUT TYPE="radio" NAME="type"
VALUE="oobleck">Oobleck<br> 
                        
                           </tr> 
                           </td> 
                           <tr> 
                           <td bgcolor="#ffffff"><center><INPUT
TYPE="submit" 
                    VALUE="Submit">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
                           <INPUT TYPE="reset" VALUE="Reset"></center></td> 
                        </tr> 
                        </table> 
                        </td></tr> 
                    </table> 
                    </body> 
                    </html> 

                    Begin_HTML 

                    exit(0); 

                   
##############################################################################





Fear is the path to the dark side. Fear leads to anger, anger leads to
hate, hate leads to suffering.
-=[Yoda]=-





_______________________________________________________
Get 100% FREE Internet Access powered by Excite
Visit http://freelane.excite.com/freeisp


---
You are currently subscribed to perl-win32-users as: [archive@jab.org]
To unsubscribe, forward this message to
         [EMAIL PROTECTED]
For non-automated Mailing List support, send email to  
         [EMAIL PROTECTED]

Reply via email to