Form validation problem

Discussion in 'General Web Coding' started by almadera, Mar 17, 2008.

  1. almadera

    almadera Guppy

    I'm using Godaddy's gdform.php form mailer for my forms. The forms work perfectly except the validation. I need the visitors to fill in the fields and then submit the information to my email, but the problem is that everyone can submitt even if he doesn't fill in the form. I want all of the fileds to be required. Is there something wrong with the code ? Here it is :




    <form action="/gdform.php" method="post">
    <table align="center">
    <input type="hidden" name="subject" value="Form Submission">
    <input type="hidden" name="redirect" value="/Add/thankmes.html">
    <input type="hidden" name="required" value="YourName, Email, description">
    <tr>
    <td><p><font color=WHITE font size=4>Your Name:</p> </font></td> <td align=center height=50><p><input type="text" name="YourName" size="52"/></p></td>
    </tr>
    <tr>
    <td><p><font color=WHITE font size=4>Your E-mail:</p> </font></td> <td height=50><p><input type="text" name="Email" size="52"/></p></td>
    </tr>

    <tr>
    <td><p><font color=WHITE font size=4>Your Message:</p> </font></td> <td><br><p><textarea name="description" cols="40" rows="5">
    </textarea></p></td>
    </tr>
    <tr>
    <td><input type="submit" name="submit" value="Send"/></td>
    </tr>
    </table>
    </form>
  2. Stephen

    Stephen US Operations Staff Member

    You have no code there to implement validation that I see.
  3. almadera

    almadera Guppy

    Here is my form script :


    <form action="/gdform.php" method="post">
    <table align="center">



    <input type="hidden" name="subject" value="Form Submission">

    <input type="hidden" name="redirect" value="/Add/thankmes.html">

    <input type="hidden" name="required" value="YourName, Email, description">

    <tr>
    <td><p><font color=WHITE font size=4>Your Name:</p> </font></td> <td align=center height=50><p><input type="text" name="YourName" size="52"/></p></td>
    </tr>

    <tr>
    <td><p><font color=WHITE font size=4>Your E-mail:</p> </font></td> <td height=50><p><input type="text" name="Email" size="52"/></p></td>
    </tr>


    <tr>
    <td><p><font color=WHITE font size=4>Your Message:</p> </font></td> <td><br><p><textarea name="description" cols="40" rows="5">
    </textarea></p></td>
    </tr>

    <tr>
    <td><input type="submit" name="submit" value="Send"/></td>
    </tr>

    </table>
    </form>


    And here the gdform.php script :

    <?php
    $request_method = $_SERVER["REQUEST_METHOD"];
    if($request_method == "GET"){
    $query_vars = $_GET;
    } elseif ($request_method == "POST"){
    $query_vars = $_POST;
    }
    reset($query_vars);
    $t = date("U");

    $file = $_SERVER['DOCUMENT_ROOT'] . "/../data/gdform_" . $t;
    $fp = fopen($file,"w");
    while (list ($key, $val) = each ($query_vars)) {
    fputs($fp,"<GDFORM_VARIABLE NAME=$key START>\n");
    fputs($fp,"$val\n");
    fputs($fp,"<GDFORM_VARIABLE NAME=$key END>\n");
    if ($key == "redirect") { $landing_page = $val;}
    }
    fclose($fp);
    if ($landing_page != ""){
    header("Location: http://".$_SERVER["HTTP_HOST"]."/$landing_page");
    } else {
    header("Location: http://".$_SERVER["HTTP_HOST"]."/");
    }


    ?>


    The user can fill in any, all, or none of the fields and submit. Does anyone know how to edit the gdform.php code so it doesn't pass empty fields ?

Share This Page

JodoHost - 26,000 hosting end-users in 100 countries
Plesk Web Hosting
VPS Hosting
H-Sphere Web Hosting
Other Services