| | |
form validation with select option data + input data
Please support our PHP advertiser: PostgreSQL or MySQL? Compare and contrast the two most popular open source databases
![]() |
•
•
Join Date: Sep 2009
Posts: 3
Reputation:
Solved Threads: 0
When I fill my Contact Form
1) select option TITLE (MR. MRS. MISS)
2)First Name
3)Last Name
4) E-mail
I make validation to all data, The question is when I select title e.g. MR and then fill first name, last name AND e-mail IS NOT right (info2company.com) validation said *Email invalid, then I write my e-mail right (info@company.com) and click SEND button then validation said * title not entered.
I wanna hold my option data please help, I fight 3 days now...
here is my code:
register.php
process.php
include/session.php
1) select option TITLE (MR. MRS. MISS)
2)First Name
3)Last Name
4) E-mail
I make validation to all data, The question is when I select title e.g. MR and then fill first name, last name AND e-mail IS NOT right (info2company.com) validation said *Email invalid, then I write my e-mail right (info@company.com) and click SEND button then validation said * title not entered.
I wanna hold my option data please help, I fight 3 days now...
here is my code:
register.php
PHP Syntax (Toggle Plain Text)
<?php /** * Register.php * Last Updated: 5-9-2009 */ include("include/session.php"); ?> <html> <title>Registration Page</title> <body> <?php if(isset($_SESSION['regsuccess'])){ /* Registration was successful */ if($_SESSION['regsuccess']){ echo "<h1>Registered!</h1>"; echo "<p>Thank you <b>".$_SESSION['reguname']."</b>, " ."go back to <a href=\"register.php\">register page</a>.</p>"; } /* Registration failed */ else{ echo "<h1>Registration Failed</h1>"; echo "<p>We're sorry, but an error has occurred ."<br>Please try again at a later time.</p>"; } unset($_SESSION['regsuccess']); unset($_SESSION['reguname']); } else{ ?> <h1>Contact Form</h1> <?php if($form->num_errors > 0){ echo "<td><font size=\"2\" color=\"#ff0000\">".$form->num_errors." error(s) found</font></td>"; } ?> <form action="process.php" method="POST"> <table align="left" border="1" cellspacing="0" cellpadding="3"> <tr> <td>Title:</td> <td> <select name="title" value="<?php echo $form->value("title"); ?>"> <option value="">Select One</option> <option value="Mr">Mr.</option> <option value="Mrs">Mrs.</option> <option value="Ms">Ms.</option> </select> </td> <td><?php echo $form->error("title"); ?></td> </tr> <tr> <td>First Name:</td> <td><input type="text" name="firstname" maxlength="30" value="<?php echo $form->value("firstname"); ?>"></td> <td><?php echo $form->error("firstname"); ?></td> </tr> <tr> <td>Last Name:</td> <td><input type="text" name="lastname" maxlength="30" value="<?php echo $form->value("lastname"); ?>"></td> <td><?php echo $form->error("lastname"); ?></td> </tr> <tr> <td>Email:</td> <td><input type="text" name="email" maxlength="50" value="<?php echo $form->value("email"); ?>"></td> <td><?php echo $form->error("email"); ?></td> </tr> <tr> <td colspan="2" align="right"> <input type="hidden" name="subjoin" value="1"> <input type="submit" value="Send!"></td> </tr> <tr> <td colspan="2" align="left"><a href="main.php">Back to Main</a></td> </tr> </table> </form> <?php } ?> </body> </html>
process.php
PHP Syntax (Toggle Plain Text)
<?php /** * Process.php * Last Updated: 5-9-2009 */ include("include/session.php"); class Process { /* Class constructor */ function Process(){ global $session; /* User submitted registration form */ if(isset($_POST['subjoin'])){ $this->procRegister(); } else{ header("Location: register1.php"); } } function procRegister(){ global $session, $form; /* Convert username to all lowercase (by option) */ if(ALL_LOWERCASE){ $_POST['title'] = strtolower($_POST['title']); } /* Registration attempt */ $retval = $session->register($_POST['title'],$_POST['firstname'],$_POST['lastname'],$_POST['email']); /* Registration Successful */ if($retval == 0){ $_SESSION['reguname'] = $_POST['title']; $_SESSION['regsuccess'] = true; header("Location: ".$session->referrer); } /* Error found with form */ else if($retval == 1){ $_SESSION['value_array'] = $_POST; $_SESSION['error_array'] = $form->getErrorArray(); header("Location: ".$session->referrer); } /* Registration attempt failed */ else if($retval == 2){ $_SESSION['reguname'] = $_POST['title']; $_SESSION['regsuccess'] = false; header("Location: ".$session->referrer); } } }; /* Initialize process */ $process = new Process; ?>
include/session.php
PHP Syntax (Toggle Plain Text)
<?php /** * Session.php * Last Updated: 5-9-2009 */ include("database.php"); include("form.php"); class Session { var $title; var $time; var $url; var $referrer; /* Class constructor */ function Session(){ $this->time = time(); $this->startSession(); } function startSession(){ global $database; //The database connection session_start(); //Tell PHP to start the session /* Set referrer page */ if(isset($_SESSION['url'])){ $this->referrer = $_SESSION['url']; }else{ $this->referrer = "/"; } /* Set current url */ $this->url = $_SESSION['url'] = $_SERVER['PHP_SELF']; } function register($subtitle,$subfirstname,$sublastname,$subemail){ global $database, $form, $mailer; //The database, form and mailer object /* title error checking */ $field = "title"; //Use field name for title if(!$subtitle || strlen($subtitle = trim($subtitle)) == 0){ $form->setError($field, "* title not entered"); } else{ /* Spruce up title, check length */ $subtitle = stripslashes($subtitle); } /* First Name error checking */ $field = "firstname"; //Use field name for firstname if(!$subfirstname || strlen($subfirstname = trim($subfirstname)) == 0){ $form->setError($field, "* firstname not entered"); } else{ /* Spruce up firstname, check length */ $subfirstname = stripslashes($subfirstname); if(strlen($subfirstname) < 5){ $form->setError($field, "* firstname below 5 characters"); } else if(strlen($subfirstname) > 30){ $form->setError($field, "* firstname above 30 characters"); } /* Check if firstname is not alphanumeric */ else if(!eregi("^([0-9a-z])+$", $subfirstname)){ $form->setError($field, "* firstname not alphanumeric"); } } /* Last Name error checking */ $field = "lastname"; //Use field name for lastname if(!$sublastname || strlen($sublastname = trim($sublastname)) == 0){ $form->setError($field, "* lastname not entered"); } else{ /* Spruce up lastname, check length */ $sublastname = stripslashes($sublastname); if(strlen($sublastname) < 5){ $form->setError($field, "* lastname below 5 characters"); } else if(strlen($sublastname) > 30){ $form->setError($field, "* lastname above 30 characters"); } /* Check if lastname is not alphanumeric */ else if(!eregi("^([0-9a-z])+$", $sublastname)){ $form->setError($field, "* lastname not alphanumeric"); } } /* Email error checking */ $field = "email"; //Use field name for email if(!$subemail || strlen($subemail = trim($subemail)) == 0){ $form->setError($field, "* Email not entered"); } else{ /* Check if valid email address */ $regex = "^[_+a-z0-9-]+(\.[_+a-z0-9-]+)*" ."@[a-z0-9-]+(\.[a-z0-9-]{1,})*" ."\.([a-z]{2,}){1}$"; if(!eregi($regex,$subemail)){ $form->setError($field, "* Email invalid"); } $subemail = stripslashes($subemail); } /* Errors exist, have title correct them */ if($form->num_errors > 0){ return 1; //Errors with form } /* No errors, add the new account to the */ else{ if($database->addNewUser($subtitle,$subfirstname,$sublastname,$subemail)){ if(EMAIL_WELCOME){ $mailer->sendWelcome($subtitle,$subfirstname,$sublastname,$subemail); } return 0; //New user added succesfully }else{ return 2; //Registration attempt failed } } } }; $session = new Session; /* Initialize form object */ $form = new Form; ?>
Try replacing line 42 of include/session.php with the following
php Syntax (Toggle Plain Text)
$subtitle = trim($subtitle) if(strlen($subtitle) == 0){
Try not to bump 10 year old threads as it can be really annoying.
Like php then read my website at http://syntax.cwarn23.net/
Star-Trek-Atlantis - now that's what I call a movie ^_^
My favourite PC. - MacGyver Fan
Bad english note: dis-iz-2b4u
Like php then read my website at http://syntax.cwarn23.net/
Star-Trek-Atlantis - now that's what I call a movie ^_^
My favourite PC. - MacGyver Fan
Bad english note: dis-iz-2b4u
•
•
Join Date: Sep 2009
Posts: 3
Reputation:
Solved Threads: 0
cwarn23, I think you send me to right place in file session.php line 45 this is the else and in file register.php.
put <?php echo $form->value("title"); ?> before<select name".....
and when you select e.g. Mr title you see before <select box Mr value, I think I need something like if option value == my selection e.g. Mr make this value selected.
can somebody HELP
put <?php echo $form->value("title"); ?> before<select name".....
and when you select e.g. Mr title you see before <select box Mr value, I think I need something like if option value == my selection e.g. Mr make this value selected.
can somebody HELP
•
•
•
•
put <?php echo $form->value("title"); ?> before<select name".....
and when you select e.g. Mr title you see before <select box Mr value, I think I need something like if option value == my selection e.g. Mr make this value selected.
Try not to bump 10 year old threads as it can be really annoying.
Like php then read my website at http://syntax.cwarn23.net/
Star-Trek-Atlantis - now that's what I call a movie ^_^
My favourite PC. - MacGyver Fan
Bad english note: dis-iz-2b4u
Like php then read my website at http://syntax.cwarn23.net/
Star-Trek-Atlantis - now that's what I call a movie ^_^
My favourite PC. - MacGyver Fan
Bad english note: dis-iz-2b4u
![]() |
Other Threads in the PHP Forum
- Previous Thread: Defining Variable in Link
- Next Thread: "Does not contain" ...
| Thread Tools | Search this Thread |
ajax apache api array basics beginner binary broken cakephp checkbox class cms code codingproblem combobox cron curl database date display domain dynamic echo email error file files folder form format forms function functions google href htaccess html image include insert interactive ip java javascript joomla js limit link load login mail malfunctioning menu mlm mobile multiple mysql nodes oop outofmemmory paging parse paypal pdf php problem procedure query radio ram random recursion reference remote return script search server sessions sms source space sql syntax system table tutorial unset up-to-date update upload url validation validator variable video web webapplications websitecontactform youtube






