HI
You can figure this out so you can work with one file. It's much 
easier to maintain.

Here is an example. It's a simple RSVP form. ***Change line 100 to 
use your own email address to receive the information.  I wrote this 
a while back so I'm not bragging about the html format or coding but 
it works.  It uses a more primitive series of IF's to test the input 
rather than the IF - ELSEIF - ELSE series I described earlier.  In 
this example, remember the first time through, pg is blank (which is 
<2).

Good Luck.

<HTML>
<HEAD>
<TITLE>  RSVP
</TITLE>
</HEAD>
<BODY BGCOLOR="WHITE"  LINK="BLUE" VLINK="BLUE" ALINK="ORANGE" text=BLACK>
<BASEFONT SIZE=3>
<DIV ALIGN=CENTER>
<TABLE WIDTH=60% BGCOLOR="#0099FF">
<TR><TD>
<BR><BR><BR>

<?

  IF($pg=="1")
         {  if ($fi!='' and $last!='' and $em!="")
         {      $pg="2" ;  }
else
         {
        if($fi=="")
         { echo "<BR><H3 ALIGN=CENTER><FONT FACE=Sans-serif 
COLOR=WHITE SIZE=3>Please fill-in your first name.</FONT></H3>" ; } ;
        if($last=="")
         { echo "<BR><H3 ALIGN=CENTER><FONT FACE=Sans-serif 
COLOR=WHITE SIZE=3>Please fill-in your family name.</FONT></H3>" ; } ;
        if($em=="")
         { echo "<BR><H3 ALIGN=CENTER><FONT FACE=Sans-serif 
COLOR=WHITE SIZE=3>Please fill-in your email address.</FONT></H3>" ; 
} ;
         }
         }
?>

<?  IF($pg<"2")   { ?>

        <form action="<?echo $PHP_SELF?>" method="POST">
<DIV ALIGN=CENTER>
<TABLE width=60% CELLPADDING=3>
<TR><TD VALIGN=TOP COLSPAN=3>
<FONT FACE="comic sans ms, Sans-serif" COLOR=WHITE SIZE=4><B> Member 
RSVP </FONT>
<BR><BR>
<FONT FACE="comic sans ms, Sans-serif" COLOR=BLACK SIZE=3><B> Please 
fill-in each line.
</B></FONT><BR>
</TD></TR>
<TR><TD align=right width 30%><FONT FACE="comic sans ms, Sans-serif" 
COLOR=BLACK SIZE=3><B> Name</B></FONT></TD>
<TD align=left width 70%><FONT FACE="comic sans ms, Sans-serif" 
COLOR=BLACK SIZE=2><B>First</B><BR><FONT SIZE=4><INPUT NAME="fi" 
size=20 VALUE="<? Echo $fi?>"></TD>
<TD align=left><FONT FACE="comic sans ms, Sans-serif" COLOR=BLACK 
SIZE=2><B>Family</B><BR><FONT SIZE=4><INPUT NAME="last"  size=20 
VALUE="<? Echo $last?>"></TD></TR>
<TR><TD align=right ><FONT FACE="comic sans ms, Sans-serif" 
COLOR=BLACK SIZE=3><B>E-Mail Address</B></FONT></TD><TD COLSPAN=2 
align=left><FONT SIZE=4><INPUT NAME="em"  size=44 VALUE="<? Echo 
$em?>"></TD></TR>

</TABLE>
<BR>
<HR>
<INPUT TYPE=HIDDEN NAME=pg VALUE=1>
<BR><INPUT TYPE="submit" VALUE=" Next ">
</FORM>
<DIV>
<BR><BR>
<?       }?>  <! End of pg1.!>

<?  IF($pg=="2")   { ?>


<FONT FACE="comic sans ms, Sans-serif" COLOR=BLUE SIZE=3>
<B>Is this correct?
<BR>Use Back-Button to make a change or Send It!
<BR><BR>        </B></FONT>
        <DIV ALIGN=CENTER>

<TABLE border=0 CELLPADDING=0 CELLSPACING=0     WIDTH="65%">
<tr><TD BGCOLOR="#FFF8DC" WIDTH=12> &#160; </TD>
<TD BGCOLOR="#FFF8DC">
<BR><BR><FONT FACE="comic sans ms, Sans-serif" COLOR=BLUE><FONT 
SIZE=4><B><DIV ALIGN=CENTER> RSVP </B>

<?echo "<BR><HR>";
        echo "<FONT SIZE=2>Name:<B><FONT SIZE=4> $fi $last </B><BR><HR>";
        echo "<FONT SIZE=2>Email:<B><FONT SIZE=4> $em </B><BR><HR>";
        echo "<BR><BR>";

?>
        </TD>
<TD BGCOLOR="#FFF8DC" WIDTH=12> &#160; </TD></TR>
</TABLE>

        <DIV ALIGN=center>
        <form action="<?echo $PHP_SELF?>?" method="POST">
        <input type="hidden" name="em" value="<?echo $em?>">
        <input type="hidden" name="fi" value="<?echo $fi?>">
        <input type="hidden" name="last" value="<?echo $last?>">
        <input type="hidden" name="pg" value="3">


        <input type="submit" value=" Send It! ">
        </DIV></FORM>
<BR><BR>


<?       }?>  <! End of pg2.!>

<?  IF($pg=="3")   { ?>

<?

        /* Mail results to this address */
        $mailTo = "[EMAIL PROTECTED]";

        /* set the subject*/
$mailSubject = "RSVP";

        /* Add From Header*/
$mailHeaders = "From: User Group Web Server/n";

/* Message */
$mailBody = "Name : $fi $last\n";
$mailBody .= "E-mail  : $em\n\n";

        /* send mail*/
mail ($mailTo, $mailSubject, $mailBody, $mailHeaders);


?>

<BR><BR><BR><BR><BR><DIV ALIGN=CENTER>
        <FONT FACE="comic sans ms, Sans-serif" COLOR=WHITE 
SIZE=4><BR><B>Your RSVP Was Sent! - - Thank You!
<BR><BR>
<BR><BR>
</B></FONT>
</TD></TR></TABLE>

<BR><BR>

<?       }?>  <! End of pg3.!>

</TD></TR>
</TABLE>
</BODY>
</HTML>




>Thanks for your input, but I still dont really understand your 
>logic/technique.  If you may, please send me a basic one textarea 
>form, as too how you use this logic.  I guess my main stumbling 
>block is how you move from a blank form ($pg=1) to $pg=2.  I may 
>have to go back to a  2 file format to get this done.  Thanks for 
>listening....
>
>Gerard
>
>Michael J. Seely wrote:
>
>>Yes... I like using pg=1, 2, 3, ... to keep track of where I want 
>>the page to go next.  It seems easy that way.  Good Luck.
>>
>>>So far this message and another who mentioned $HTTP_POST_VARS[]
>>>  made a small light go off in my head.  Not enough to get the 
>>>script woriking, but it made me think.  Its not clear, but I sort 
>>>of came up with another way, but I dont know if its doable
>>>.
>>>In my form I have a hidden element called 'post' with a value of 1.
>>>After the end of the form I echo $post.
>>>If its a first time view, there is nothing to output, thats normal.
>>>If I submitted the form it echoes 1, thats to be expected.
>>>Now, Im able to tell if the form has been posted or not.
>>>Enter some logic......
>>>if ($post = "1" && $Age = " ") {echo "NO";}
>>>else {echo "YES";}
>>>Now here is what happens.  On a first time view of the page it 
>>>outputs 'NO' (Good).  If I dont enter anything in the age field 
>>>and submit the form it outputs 'NO' (Good).  If I enter a value 
>>>into the age field and submit, it outputs 'NO' (Not Good).
>>>
>>>Am I heading in the right direction with this??
>>>
>>>
>>>
>>>Michael J. Seely wrote:
>>>
>>>>I do this sort of thing all the time.  The format I use typically 
>>>>follows this logic.
>>>>
>>>>The PHP file has four IF-ELSEIF-ELSE sections.
>>>>    pg=1 or blank  is the initial form
>>>>    pg=2 is the error check looking at input values.
>>>>     If it passes, pg is set to 3.
>>>>     If not, set to 1. The advantage of this is the original input 
>>>>values can be saved and displayed with Value=<? ECHO..?> 
>>>>sequences so the use doesn't have to input everything if they 
>>>>make a mistake. The error can be highlighted with a color or 
>>>>text!!!.
>>>>    pg=3 shows a visual verification page. The user can scan the 
>>>>input and use the back button to make changes or click OK to 
>>>>proceed.
>>>>    pg=4 is the action step - send an e-mail including the input, 
>>>>post input to a database or ???
>>>>
>>>>The sections are written in this order - 2, 4, 3, 1.
>>>>
>>>>IF($pg="2")
>>>>     { do the error checking
>>>>     e.g., if fields A, B, and C are not blank = OK
>>>>     e.g., if a value is > 100 = not OK
>>>>        IF OK, $pg=3;  IF not OK, $pg=1;
>>>>     }
>>>>ELSEIF($pg="4")
>>>>     { do the action stuff.
>>>>     }
>>>>ELSEIF($pg="3")
>>>>     { show an html page in a nice format showing the input values
>>>>        IF they like it, the form submit button sets pg=4, and 
>>>>uses hidden fields to copy all of the input values to pg 4.
>>>>     }
>>>>ELSE
>>>>     { Show the initial input form.
>>>>     use <INPUT TYPE="HIDDEN" NAME="pg" VALUE="2">
>>>>     }
>>>>
>>>>
>>>>The form can include error check and input tags like this:
>>>>
>>>><? IF(($pg="1") and ($val3==""))
>>>>     { ECHO"<FONT COLOR=RED>Required.</FONT><BR>"; } ?>
>>>><TEXTAREA WRAP="SOFT" NAME="val3" COLS="50" ROWS="5"><? ECHO 
>>>>"$val3"; ?></TEXTAREA>
>>>>
>>>><INPUT TYPE="RADIO" NAME="v2" VALUE="6" <?IF($v2=="6") { ECHO 
>>>>"CHECKED"; } ?> >6
>>>><INPUT TYPE="RADIO" NAME="v2" VALUE="7" <?IF($v2=="7") { ECHO 
>>>>"CHECKED"; } ?> >7
>>>>
>>>>and so on.  Hope this is useful...
>>>>
>>>>>Im trying to introduce some logic into a form.I am unsing 
>>>>>$PHP_SELF as the target.
>>>>><form action=\"$PHP_SELF\" method=\"POST\" type=\"multipart/form-data\">
>>>>>
>>>>>I have a text area that the user inputs their age.  What I want 
>>>>>is that if the field is blank, to stop the script and send the 
>>>>>user back to fill in their age.  My problem now is that if I go 
>>>>>to the blank application form, The script interprets the form as 
>>>>>being blank and spits out the error.  Ideal scenario, a blank 
>>>>>form is presented to the user, and when the form is submitted, 
>>>>>do the logic check and act accordingly.  Is it possible using 
>>>>>$PHP_SELF as the target, or do I have to use 2 files: a form 
>>>>>'front end' with the php logic in the 'backend'??
>>>>>
>>>>>
>>>>>if ($Age = " ") {
>>>>>         echo "Please go back and enter your age."; } exit();
>>>>>
>>>>>Thanks
>>>>>Gerard
>>>>>
>>>>>
>>>>>--
>>>>>PHP General Mailing List (http://www.php.net/)
>>>>>To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>>>For additional commands, e-mail: [EMAIL PROTECTED]
>>>>>To contact the list administrators, e-mail: [EMAIL PROTECTED]
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>>
>>>--
>>>PHP General Mailing List (http://www.php.net/)
>>>To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>For additional commands, e-mail: [EMAIL PROTECTED]
>>>To contact the list administrators, e-mail: [EMAIL PROTECTED]

-- 

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
    Michael Seely      408-777-9949




                             

Reply via email to