designing source code for multiple forms

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • yoelgold@yahoo.com

    designing source code for multiple forms

    Hi
    I want to start writing a new site. It will include 3 forms that will
    collect information from the user. I know how to keep the info in
    sessions etc. my question is about the design of the server side php
    files. I don't want to design all three forms in one big file, id
    rather have a separate php file for each form.

    Say I have a file form1.php which creates the initial form, should I
    say (form1 action="form1.p hp") and have the form validation code in
    form1.php? If so how do I call form2.php from inside form1.php? Or do I
    say(form1 action ="form2.php" ) and have my validation code for form 1
    inside form2.php if so how do I call back form1 if validation fails

    now this has been asked already (see link below)and it was suggested to
    use the include() require() functions. but then others have argued
    against it. so is includeonce() the most practical way or should I
    rather write all the code in to one big index.php

  • yoelgold@yahoo.com

    #2
    Re: designing source code for multiple forms

    [color=blue]
    >
    > now this has been asked already (see link below)and it was suggested[/color]
    to[color=blue]
    > use the include() require() functions. but then others have argued
    > against it. so is includeonce() the most practical way or should I
    > rather write all the code in to one big index.php[/color]

    sorry i forgot to include the link, here you go



    Comment

    • ggg@gg.com

      #3
      Re: designing source code for multiple forms

      I can't think of a good reason for either case -- wether you have
      separate files for each section, or have one big file. That's why I'd
      say it's more of stylistic issue.

      That said, I'd argue for multiple pages, because, to me, it fits in
      better with the logical flow of what you want to do. Like another guy
      said in that old thread - I like the one-to-one correlation between
      script and URL.

      I typically have my form validation on the same page. Here's a sketch of
      what I'm thinking. In form1.php:

      <?

      // if it's valid submitted data, go to step 2
      if (isValid())
      header();
      ?>

      <form action="form1.p hp" method="POST">
      <!--- the form elements -->
      </form>


      ....then in form2.php you could store the passed variables in a <input
      type="hidden"> fields.

      ...then if you have problems, and the user has to go back to form1.php
      you have those form1 varaiables tracked.

      It sounds like you want to avoid passing everything around? I guess you
      could use sessions, as you mentioned or, cookies.


      In article <1107898647.435 794.272210@c13g 2000cwb.googleg roups.com>,
      yoelgold@yahoo. com says...[color=blue]
      > Hi
      > I want to start writing a new site. It will include 3 forms that will
      > collect information from the user. I know how to keep the info in
      > sessions etc. my question is about the design of the server side php
      > files. I don't want to design all three forms in one big file, id
      > rather have a separate php file for each form.
      >
      > Say I have a file form1.php which creates the initial form, should I
      > say (form1 action="form1.p hp") and have the form validation code in
      > form1.php? If so how do I call form2.php from inside form1.php? Or do I
      > say(form1 action ="form2.php" ) and have my validation code for form 1
      > inside form2.php if so how do I call back form1 if validation fails
      >
      > now this has been asked already (see link below)and it was suggested to
      > use the include() require() functions. but then others have argued
      > against it. so is includeonce() the most practical way or should I
      > rather write all the code in to one big index.php
      >
      >[/color]

      Comment

      Working...