menios Posted December 7, 2007 Share Posted December 7, 2007 This example is used to valid the form data by using php with attractive error message by coloring the text The tutorial was found here http://www.weberdev.com/get_example-4396.html But the result is a bunch of code as if there is a missing bracket but thats not the case. Any help appreciated [hr]<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Form Validation</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <? function error_bool($error, $field) { if($error[$field]) { print("<td style=color:red>"); } else { print("<td>"); } } function show_form() { global $HTTP_POST_VARS, $print_again, $error; ?> <form action="" method="post"> <table width="400" border="1" cellspacing="0" cellpadding="0"> <tr> <?php error_bool($error, "name"); ?> Name </td> <td><input name="name" type="text" id="name" value="<? echo $_POST["name"]; ?>"></td> </tr> <tr> <?php error_bool($error, "email"); ?> Email </td> <td><input name="email" type="text" id="email" value="<? echo $_POST["email"]; ?>"></td> </tr> <tr> <td><input type="submit" name="Submit" value="Submit"></td> <td> </td> </tr> </table> </form> <? } if(isset($_POST["Submit"])) { check_form(); } else { show_form(); } function check_email_address($email) { // First, we check that there's one @ symbol, and that the lengths are right if (!ereg("^[^@]{1,64}@[^@]{1,255}$", $email)) { // Email invalid because wrong number of characters in one section, or wrong number of @ symbols. return false; } // Split it into sections to make life easier $email_array = explode("@", $email); $local_array = explode(".", $email_array[0]); for ($i = 0; $i < sizeof($local_array); $i++) { if (!ereg("^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%&'*+/=?^_`{|}~\.-]{0,63})|(\"[^(\\|\")]{0,62}\"))$", $local_array[$i])) { return false; } } if (!ereg("^\[?[0-9\.]+\]?$", $email_array[1])) { // Check if domain is IP. If not, it should be valid domain name $domain_array = explode(".", $email_array[1]); if (sizeof($domain_array) < 2) { return false; // Not enough parts to domain } for ($i = 0; $i < sizeof($domain_array); $i++) { if (!ereg("^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|([A-Za-z0-9]+))$", $domain_array[$i])) { return false; } } } return true; } function check_form() { global $HTTP_POST_VARS, $error, $print_again; $error['name'] = false; if($_POST["name"]=="") { $error['name'] = true; $print_again = true; $message="The name field is empty<br>"; } if(!check_email_address($_POST['email'])) { $error['email'] = true; $print_again = true; $message.="Either Field Empty or Invalid Email ID <br>"; } if($print_again) { show_form(); } else { show_form(); $message="All Fields are valid <br> Now, In this way you can validate the other textfield as well<br> You can insert data into table"; } echo "$message"; } ?> </body> </html> Quote Link to comment Share on other sites More sharing options...
peranha Posted December 7, 2007 Share Posted December 7, 2007 Add php to all the opening php tags. instead of <? change it to <?php. This happens on my server as well. Quote Link to comment Share on other sites More sharing options...
revraz Posted December 7, 2007 Share Posted December 7, 2007 Change <? to <?PHP If it still just shows code, sounds like you dont have PHP installed on your server. But the result is a bunch of code as if there is a missing bracket but thats not the case. Any help appreciated Quote Link to comment Share on other sites More sharing options...
menios Posted December 7, 2007 Author Share Posted December 7, 2007 adding <?php did the trick thanks guys :) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.