How Do I correctly pass parms from html to applet
	
	
		I have a FORM, an Action HTML, and an Applet, but cannot seem to correly pass the parameters to the applet from the form.  Below is the code I have for each file.  What am I missing?
Thx in advance,
Ahmedat
----- FORM  CODE ---------------
<html>
<head>      
<title>Histogram Tester</title>
</head>
<body>
<hr>
<h1>Histogram Tester</h1> 
<FORM METHOD=POST name="Form1" ACTION="GraphHist2.html">
Enter a Title for the Histogram of Freq Polygon: <INPUT TYPE=text 
NAME="gTitle"><BR>
Enter a Label for the x-axis: <INPUT TYPE=text NAME="xLabel"><BR>
Enter a Label for the y-axix: <INPUT TYPE=text NAME="yLabel"><BR>
Enter Number of Data Points: <INPUT TYPE=text NAME="numPts"><BR>
Enter Number of Classes: <INPUT TYPE=text NAME="numClasses"><BR>
<br>
Enter Up to 22 Data Values (Leave unused ones blank)<br>
Data Value 1: <INPUT TYPE=text NAME="bin0" SIZE = 6><BR>
Data Value 2: <INPUT TYPE=text NAME="bin1" SIZE = 6><BR>
Data Value 3: <INPUT TYPE=text NAME="bin2" SIZE = 6><BR>
Data Value 4: <INPUT TYPE=text NAME="bin3" SIZE = 6><BR>
Data Value 5: <INPUT TYPE=text NAME="bin4" SIZE = 6><BR>
Data Value 6: <INPUT TYPE=text NAME="bin5" SIZE = 6><BR>
Data Value 7: <INPUT TYPE=text NAME="bin6" SIZE = 6><BR>
Data Value 8: <INPUT TYPE=text NAME="bin7" SIZE = 6><BR>
Data Value 9: <INPUT TYPE=text NAME="bin8" SIZE = 6><BR>
Data Value 10: <INPUT TYPE=text NAME="bin9" SIZE = 6><BR>
Data Value 11: <INPUT TYPE=text NAME="bin10" SIZE = 6><BR>
Data Value 12: <INPUT TYPE=text NAME="bin11" SIZE = 6><BR>
Data Value 13: <INPUT TYPE=text NAME="bin12" SIZE = 6><BR>
Data Value 14: <INPUT TYPE=text NAME="bin13" SIZE = 6><BR>
Data Value 15: <INPUT TYPE=text NAME="bin14" SIZE = 6><BR>
Data Value 16: <INPUT TYPE=text NAME="bin15" SIZE = 6><BR>
Data Value 17: <INPUT TYPE=text NAME="bin16" SIZE = 6><BR>
Data Value 18: <INPUT TYPE=text NAME="bin17" SIZE = 6><BR>
Data Value 19: <INPUT TYPE=text NAME="bin18" SIZE = 6><BR>
Data Value 20: <INPUT TYPE=text NAME="bin19" SIZE = 6><BR>
Data Value 21: <INPUT TYPE=text NAME="bin20" SIZE = 6><BR>
Data Value 22: <INPUT TYPE=text NAME="bin21" SIZE = 6><BR>
<!INPUT TYPE=checkbox NAME="Dummy Checkbox">Dummy Checkbox <br>
<!INPUT TYPE=button VALUE="Draw Freq Polygon"><br>
<INPUT TYPE="SUBMIT" VALUE="Draw Histogram"><br>
</FORM> 
<hr>
</body>
</html>
------------------ ACTION HTML (GraphHist2.html)--------
<html>
<head>      
<title>GraphHist2</title>
</head>
<body>
<hr>
<applet name=graphapp code=GraphHist.class width=600 height=400>
</applet>
<hr>
</body>
</html>
------------------ APPLET CODE (GraphHist.java)--------
/*  
Class GraphHist */
  import java.awt.Graphics;
  import java.awt.Color;
  import java.awt.*;
  public class GraphHist extends java.applet.Applet {   
   int nClasses = 1, nPts=1;
   float[ ]  dataPts={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0  ,0};
   float[ ]     Cnts={1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}  ;
   float[] cInterval={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0  ,0,0};
	String gTitle =" ";
        String xLbl=" ";
        String yLbl=" ";
   //double f(double x) {	 
   //return  3*(getSize().width/2-x) + getSize().height/2-20;      
   //} //not used   
    public void init() {
       int nPts, icWidth;
       double xmin, xmax, xmed, xavg;
       float[] A={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
       String param, param1="";
       String[] bintxt = {"bin0","bin1","bin2","bin3", "bin4", "bin5", 
"bin6","bin7",
"bin8", "bin9", "bin10","bin11","bin12","bin13", "bin14", "bin15", 
"bin16","bin17","bin18","bin19","bin20","bin21  "};//can input up to 22 pts
       // Get graph title from user
	param = getParameter("gTitle");
       if (param != null) { 
  	gTitle = param; 
       }
       else {
	gTitle = "< Insert Graph Title->";
       }
       // Get x-axis label from user
	param = getParameter("xLabel");
       if (param != null) { 
  	xLbl = param; 
       }
       else {
	xLbl = "< Insert Label ->";
       }
       // Get y-axis label from user
	param = getParameter("yLabel");
       if (param != null) { 
  	yLbl = param; 
       }
       else {
	yLbl = "< Insert Label ->";
       }
	// Get number of data pts from user
	param = getParameter("numPts");//Get num of classes from jscript file
       if (param != null) { 
  	nPts = Integer.parseInt(param); 
       }
       else {
	nPts = 2;
       }
	// Get number of classes from user
       param = getParameter("numClasses");//Get num of classes from jscript file
       if (param != null) { 
  	nClasses = Integer.parseInt(param); 
       }
       else {
	nClasses = 2;
       }
	// Get data Pts from user
       for (int I = 0 ; I < nPts ; I++) {
        param = getParameter(bintxt[i]);
        if (param != null) { 
  	  dataPts[i] = Float.parseFloat(param); 
        }
        else {
	  dataPts[i] = 0;
        }
       }
      // gTitle= UserData.getgTitle();
    /* End Inputs --- Start Data Manipulations Section*/
    // Copy input data to a working array, and find avg of values
       	xavg = AppletSRank.copyArrayPlus(nPts, dataPts, A);
    // Sort the working array A, and detm the median, min, and max     
       	xmed = AppletSRank.BSort(A, nPts);
   	xmin = A[0];
      	xmax = A[nPts-1];
    // Calc Class Width
	icWidth = (int) ((xmax - xmin)/(float)nClasses)+1;
    // Calc Class Interval Starts
        cInterval[0] = (float)xmin;
        for (int I = 1 ; I <= nClasses ; I++) {
         cInterval [i] = cInterval[i-1]+(float)icWidth;
        }
        //cInterval [nClasses] = (float)xmax;
    // Calc Interval (Bin) Counts
        for (int j = 0 ; j < nClasses ; j++) {
           Cnts[j] = 0;
           for (int I = 0 ; I < nPts ; I++) {
             if ((A[i]>=cInterval[j])&&(A[i]<cInterval[j+1])) {Cnts[j] +=1;}
           }
        }
     }
   /* End Data Manipulations --  Start Graphing Section*/
   public void paint(Graphics g) {   
     double colWdth = 0,colHght=0;
     double xScl=0,maxCnt=0,minCnt=0;
     String str1;
     //Draw x-, y- axes, and border
     g.drawLine(0, 0, 0, getSize().height); //LS
     g.drawLine(0, 0, getSize().width, 0); //Top
     g.drawLine(0, getSize().height-1, getSize().width, 
getSize().height-1);//Bott 
     g.drawLine(getSize().width-1, 0, getSize().width-1, getSize().height-1); 
//RS
     g.drawLine(0, getSize().height-30, getSize().width, 
getSize().height-30);//x-axis
     //draw y-ax tick marks ev 10 pts
     for (int y = 0 ; y < getSize().height-30 ; y+=10) 
     {	
       g.drawLine(0,y,5,y); 
     }
     //debug stmts
     //g.setColor(Color.blue);
     //g.fillRect(10,40,150,200);
     //Detm max bin counts
     maxCnt = Cnts[0];
     for (int I = 1 ; I < nClasses ; I++) 
     {	
       maxCnt = (maxCnt > Cnts[i]) ? MaxCnt : Cnts[i];
     }
       xScl = (getSize().height-30)/(1.1*maxCnt);
       colWdth =  (double)(getSize().width/(nClasses+2));
       g.setColor(Color.black);
	// Draw the histogram
     for (int I = 0 ; I < nClasses ; I++) 
     {	
       colHght = xScl * Cnts[i];   
g.drawRect((int)colWdth*(I+1), getSize().height-30-(int)colHght,(int)colWdth, 
(int)colHght);
      str1 = Float.toString(Cnts[i]);
g.drawString(str1,(int)colWdth*(I+1)+3, getSize().height-30-(int)colHght);
      str1 = Float.toString(cInterval[i]);
g.drawString(str1,(int)colWdth*(I+1)-4, getSize().height-18);
     } 
      g.drawString(gTitle,getSize().width/3, 15);// Annotate graph with graph 
title
 
      g.drawString(xLbl,getSize().width/3, getSize().height-8);// Annotate graph 
with x-axis label
   } 
}