I have this registration form for an app Im building. I have been working on it for 2 days+ and I cant seem to get it to work, going to pay $20 to whoever can debug it. The form should work but I cant seem to get it to work for one reason or another I tried so many different ways so its up to you now. Post the code here on this thread or PM me if you dont want to post it here. The first person who submits the working form gets $20 via Paypal Just a few things to keep in mind: *The error messages must display beside the form or above the label of each form *All the details are required except cellphone which is optional. *The form must be sticky meaning if it is submitted with errors the details should reappear when the page refreshes. *The form has to save to the database if all the details are fine *Please put the messages in a "error" class so I can format it with CSS here is the code: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> </head> <title> New User Registration </title> <link style="text/css" href="main.css" rel="stylesheet" /> <link style="text/css" href="registration.css" rel="stylesheet" /> <body> <div id="allcontent"> <div class="boxed" id="header"> <p> This is the header section where the banner will go </p> </div> <?php require_once('validate_email.php'); require_once('connectvars.php'); $msg_error = array("Please select your title", "Please enter your firstname", "Please enter your surname", "Please enter your email","Please re-enter the same email", "you have entered an invalid email", "Your emails do not match", "Please enter your postal address", "Please enter your post code (numbers only)", "Postal code can only be numbers", "Please enter your phone number", "Phone number can only be numbers", "Cell phone can only be numbers", "Your passwords do not match", "Please enter a value for a password"); /**Checks if the form is submitted and processes only when submit = true**/ if (isset($_POST['submit'])) { // Connects to the database $dbc = mysqli_connect('DB_HOST', 'DB_USER', 'DB_PASSWORD', 'DB_NAME') or die ('Error connecting to MYQSQL server.'); /**Retrieves the data entered into the registration form and stores them in variables**/ $title = mysqli_real_escape_string ($dbc, $_POST['title']); $fname = mysqli_real_escape_string ($dbc, trim($_POST['firstname'])); $lname = mysqli_real_escape_string ($dbc, trim($_POST['surname'])); $country = mysqli_real_escape_string($dbc, $_POST['country']); $email1 = mysqli_real_escape_string ($dbc, trim($_POST['email1'])); $email2 = mysqli_real_escape_string ($dbc, trim($_POST['email2'])); $address = mysqli_real_escape_string ($dbc, trim($_POST['address'])) ; $postcode = mysqli_real_escape_string ($dbc, trim($_POST['postcode'])); $phone = mysqli_real_escape_string ($dbc, trim($_POST['phone'])); $cellphone = mysqli_real_escape_string ($dbc, trim($_POST['cellphone'])); $pswd1 = mysqli_real_escape_string($dbc, trim($_POST['password1'])); $pswd2 = mysqli_real_escape_string($dbc, trim($_POST['password2'])); $error = false; $output_form = 'no'; /**Validates the form to determine for any errors b4 storing to the db**/ if (empty($title)) { $msg_error[0]; $error = true; $output_form = 'yes'; } if (empty($fname)) { $msg_error[1]; $error = true; $output_form = 'yes'; } if (empty($lname)) { $msg_error[2]; $error = true; $output_form = 'yes'; } if (empty($email1)) { $msg_error[3]; $error = true; $output_form = 'yes'; } if (empty($email2)) { $msg_error[3]; $error = true; $output_form = 'yes'; } if (!empty($email1) && !empty($email2)) { if ($email1 == $email2) { $result = validate_email($email1); if ($result = false) { $msg_error[5]; $error = true; $output_form = 'yes'; } else { $msg_error[6]; $error = true; $output_form = 'yes'; } } } if (empty($address)) { $msg_error[7]; $error = true; $output_form = 'yes'; } if (empty($postcode)) { $msg_error[8]; $error = true; $output_form = 'yes'; } if (!empty($postcode)) { if (!is_numeric($postcode)) { $msg_error[9]; $error = true; $output_form = 'yes'; } } if (empty($phone)) { $msg_error[10]; $error = true; $output_form = 'yes'; } if (!is_numeric($phone)) { $msg_error[11]; $error = true; $output_form = 'yes'; } if (!empty($cellphone)) { if (!is_numeric($cellphone)) { $msg_error [12]; $error = true; $output_form = 'yes'; } } if (!empty($pswd1) && !empty($pswd2)) { if (pswd1 == pswd2) { $pswd = $pswd1; } else { $msg_error[13]; $error = true; $output_form = 'yes'; } } if (empty($pswd1) || empty($pswd2)) { $msg_error[14]; $error = true; $output_form = 'yes'; } } /** if there are no errors then it creates a new user in the database using the submitted details**/ if (!$error = true) { $output_form = 'no'; $create_user = "Insert into user (UserNr, Title, FirstName, LastName, Country, Email, PostalAddress, " . "PostalCode, Phone, Cellphone)" . "Values (0, '$title', '$fname', '$lname', '$country', '$email1', '$address', '$postcode', " . " '$phone', '$cellphone')"; $create_acct = "Insert into account (AcctNr, AcctTypeID, Username, Password, UserNr," . "DateCreated)" . "Values (0, 1, '$email1', SHA('$pswd'), 0, CURRENT_TIMESTAMP())" ; $userquery_result = mysqli_query($dbc, $create_user) or die ('Error querying database'); $acctquery_result = mysqli_query($dbc, $create_acct) or die ('Error querying database'); echo 'You account has been created please check your email'; } else { $error = true; $output_form = 'yes'; } if($output_form =='yes') { ?> <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"> <div id="form"> <table> <tr> <th>Title:</th> <td> <select name="title" value="<?php echo $title; ?>" > <option value="null"></option> <option value="Mr.">Mr.</option> <option value="Mrs.">Mrs.</option> <option value="Miss">Miss</option> <option value="Ms.">Ms.</option> <option value="Dr.">Dr.</option> <option value="Prof.">Prof.</option> <option value="Rev.">Rev.</option> <option value="Other">Other</option> </select> </td> </tr> <tr> <th>First Name:</th> <td><input type="text" name="firstname" class="medium" value="<?php echo $fname; ?>" /></td> </tr> <tr> <th>Surname:</th> <td> <input type="text" name="surname" class="large" value="<?php echo $lname; ?>" /> </td> </tr> <tr> <th> Country:</th> <td> <select name="country" selected="South Africa"> <option value="Afghanistan" >Afghanistan</option> <option value="Albania" >Albania</option> <option value="Algeria" >Algeria</option> <option value="Andorra" >Andorra</option> <option value="Antigua and Barbuda" >Antigua and Barbuda</option> <option value="Argentina" >Argentina</option> <option value="Armenia" >Armenia</option> <option value="Australia" >Australia</option> <option value="Austria" >Austria</option> <option value="Azerbaijan" >Azerbaijan</option> <option value="Bahamas" >Bahamas</option> <option value="Bahrain" >Bahrain</option> <option value="Bangladesh" >Bangladesh</option> <option value="Barbados" >Barbados</option> <option value="Belarus" >Belarus</option> <option value="Belgium" >Belgium</option> <option value="Belize" >Belize</option> <option value="Benin" >Benin</option> <option value="Bhutan" >Bhutan</option> <option value="Bolivia" >Bolivia</option> <option value="Bosnia and Herzegovina" >Bosnia and Herzegovina</option> <option value="Botswana" >Botswana</option> <option value="Brazil" >Brazil</option> <option value="Brunei" >Brunei</option> <option value="Bulgaria" >Bulgaria</option> <option value="Burkina Faso" >Burkina Faso</option> <option value="Burundi" >Burundi</option> <option value="Cambodia" >Cambodia</option> <option value="Cameroon" >Cameroon</option> <option value="Canada" >Canada</option> <option value="Cape Verde" >Cape Verde</option> <option value="Central African Republic" >Central African Republic</option> <option value="Chad" >Chad</option> <option value="Chile" >Chile</option> <option value="China" >China</option> <option value="Colombia" >Colombia</option> <option value="Comoros" >Comoros</option> <option value="Congo" >Congo</option> <option value="Costa Rica" >Costa Rica</option> <option value="Côte d'Ivoire" >Côte d'Ivoire</option> <option value="Croatia" >Croatia</option> <option value="Cuba" >Cuba</option> <option value="Cyprus" >Cyprus</option> <option value="Czech Republic" >Czech Republic</option> <option value="Denmark" >Denmark</option> <option value="Djibouti" >Djibouti</option> <option value="Dominica" >Dominica</option> <option value="Dominican Republic" >Dominican Republic</option> <option value="East Timor" >East Timor</option> <option value="Ecuador" >Ecuador</option> <option value="Egypt" >Egypt</option> <option value="El Salvador" >El Salvador</option> <option value="Equatorial Guinea" >Equatorial Guinea</option> <option value="Eritrea" >Eritrea</option> <option value="Estonia" >Estonia</option> <option value="Ethiopia" >Ethiopia</option> <option value="Fiji" >Fiji</option> <option value="Finland" >Finland</option> <option value="France" >France</option> <option value="Gabon" >Gabon</option> <option value="Gambia" >Gambia</option> <option value="Georgia" >Georgia</option> <option value="Germany" >Germany</option> <option value="Ghana" >Ghana</option> <option value="Greece" >Greece</option> <option value="Grenada" >Grenada</option> <option value="Guatemala" >Guatemala</option> <option value="Guinea" >Guinea</option> <option value="Guinea-Bissau" >Guinea-Bissau</option> <option value="Guyana" >Guyana</option> <option value="Haiti" >Haiti</option> <option value="Honduras" >Honduras</option> <option value="Hong Kong" >Hong Kong</option> <option value="Hungary" >Hungary</option> <option value="Iceland" >Iceland</option> <option value="India" >India</option> <option value="Indonesia" >Indonesia</option> <option value="Iran" >Iran</option> <option value="Iraq" >Iraq</option> <option value="Ireland" >Ireland</option> <option value="Israel" >Israel</option> <option value="Italy" >Italy</option> <option value="Jamaica" >Jamaica</option> <option value="Japan" >Japan</option> <option value="Jordan" >Jordan</option> <option value="Kazakhstan" >Kazakhstan</option> <option value="Kenya" >Kenya</option> <option value="Kiribati" >Kiribati</option> <option value="North Korea" >North Korea</option> <option value="South Korea" >South Korea</option> <option value="Kuwait" >Kuwait</option> <option value="Kyrgyzstan" >Kyrgyzstan</option> <option value="Laos" >Laos</option> <option value="Latvia" >Latvia</option> <option value="Lebanon" >Lebanon</option> <option value="Lesotho" >Lesotho</option> <option value="Liberia" >Liberia</option> <option value="Libya" >Libya</option> <option value="Liechtenstein" >Liechtenstein</option> <option value="Lithuania" >Lithuania</option> <option value="Luxembourg" >Luxembourg</option> <option value="Macedonia" >Macedonia</option> <option value="Madagascar" >Madagascar</option> <option value="Malawi" >Malawi</option> <option value="Malaysia" >Malaysia</option> <option value="Maldives" >Maldives</option> <option value="Mali" >Mali</option> <option value="Malta" >Malta</option> <option value="Marshall Islands" >Marshall Islands</option> <option value="Mauritania" >Mauritania</option> <option value="Mauritius" >Mauritius</option> <option value="Mexico" >Mexico</option> <option value="Micronesia" >Micronesia</option> <option value="Moldova" >Moldova</option> <option value="Monaco" >Monaco</option> <option value="Mongolia" >Mongolia</option> <option value="Montenegro" >Montenegro</option> <option value="Morocco" >Morocco</option> <option value="Mozambique" >Mozambique</option> <option value="Myanmar" >Myanmar</option> <option value="Namibia" >Namibia</option> <option value="Nauru" >Nauru</option> <option value="Nepal" >Nepal</option> <option value="Netherlands" >Netherlands</option> <option value="New Zealand" >New Zealand</option> <option value="Nicaragua" >Nicaragua</option> <option value="Niger" >Niger</option> <option value="Nigeria" >Nigeria</option> <option value="Norway" >Norway</option> <option value="Oman" >Oman</option> <option value="Pakistan" >Pakistan</option> <option value="Palau" >Palau</option> <option value="Palestininan Territories" >Palestinian Territories</option> <option value="Panama" >Panama</option> <option value="Papua New Guinea" >Papua New Guinea</option> <option value="Paraguay" >Paraguay</option> <option value="Peru" >Peru</option> <option value="Philippines" >Philippines</option> <option value="Poland" >Poland</option> <option value="Portugal" >Portugal</option> <option value="Puerto Rico" >Puerto Rico</option> <option value="Qatar" >Qatar</option> <option value="Romania" >Romania</option> <option value="Russia" >Russia</option> <option value="Rwanda" >Rwanda</option> <option value="Saint Kitts and Nevis" >Saint Kitts and Nevis</option> <option value="Saint Lucia" >Saint Lucia</option> <option value="Saint Vincent and the Grenadines" >Saint Vincent and the Grenadines</option> <option value="Samoa" >Samoa</option> <option value="San Marino" >San Marino</option> <option value="Sao Tome and Principe" >Sao Tome and Principe</option> <option value="Saudi Arabia" >Saudi Arabia</option> <option value="Senegal" >Senegal</option> <option value="Serbia and Montenegro" >Serbia and Montenegro</option> <option value="Seychelles" >Seychelles</option> <option value="Sierra Leone" >Sierra Leone</option> <option value="Singapore" >Singapore</option> <option value="Slovakia" >Slovakia</option> <option value="Slovenia" >Slovenia</option> <option value="Solomon Islands" >Solomon Islands</option> <option value="Somalia" >Somalia</option> <option value="South Africa" selected="select" >South Africa</option> <option value="Spain" >Spain</option> <option value="Sri Lanka" >Sri Lanka</option> <option value="Sudan" >Sudan</option> <option value="Suriname" >Suriname</option> <option value="Swaziland" >Swaziland</option> <option value="Sweden" >Sweden</option> <option value="Switzerland" >Switzerland</option> <option value="Syria" >Syria</option> <option value="Taiwan" >Taiwan</option> <option value="Tajikistan" >Tajikistan</option> <option value="Tanzania" >Tanzania</option> <option value="Thailand" >Thailand</option> <option value="Togo" >Togo</option> <option value="Tonga" >Tonga</option> <option value="Trinidad and Tobago" >Trinidad and Tobago</option> <option value="Tunisia" >Tunisia</option> <option value="Turkey" >Turkey</option> <option value="Turkmenistan" >Turkmenistan</option> <option value="Tuvalu" >Tuvalu</option> <option value="Uganda" >Uganda</option> <option value="Ukraine" >Ukraine</option> <option value="United Arab Emirates" >United Arab Emirates</option> <option value="United Kingdom" >United Kingdom</option> <option value="United States" >United States</option> <option value="Uruguay" >Uruguay</option> <option value="Uzbekistan" >Uzbekistan</option> <option value="Vanuatu" >Vanuatu</option> <option value="Vatican City" >Vatican City</option> <option value="Venezuela" >Venezuela</option> <option value="Vietnam" >Vietnam</option> <option value="Yemen" >Yemen</option> <option value="Zambia" >Zambia</option> <option value="Zimbabwe" >Zimbabwe</option> </select> </td> </tr> <tr> <th>Postal Address:</th> <td> <input type="text" name="address" class="large" value="<?php echo $address; ?>"/> </td> </tr> <tr> <th> Postal Code: </th> <td> <input type="text" name="postcode" value="<?php echo $postcode; ?>" /> </td> </tr> <tr> <th> Phone Number: </th> <td> <input type="text" name="phone" value="<?php echo $phone; ?>"/> </td> <th> Cellphone:</th> <td> <input type="text" name="cellphone" id="cellphone" /> </td> </tr> <tr> <th> Email: </th> <td> <input type="text" name="email1" id="email1" class="medium" value="<?php echo $email1; ?>" /> </td> </tr> <tr> <th> Re-Enter Email:</th> <td> <input type="text" name="email2" class="medium" value="<?php echo $email2; ?>" /> </td> </tr> <tr> <th> Password:</th> <td> <input type="password" name="password1" class="medium" id="password1" value="<?php echo $pswd1; ?>" /> </td> </tr> <tr> <th> Re-Enter Password:</th> <td> <input type="password" name="password2" class="medium" id="password2" /> </td> </tr> <tr> <th> </th> <td> <input type="submit" value="submit"/> </td> </tr> </table> </form> </div> <?PHP } ?> <div class="boxed" id="footer"> <p> This is the footer area </p> </div> </div> </body> </html> Code (markup):