mikebyrne Posted April 7, 2008 Share Posted April 7, 2008 Im just constructing some validation on my form and I cant get the error messege to appear. I presume its something to do with the if($_POST["action"] == "signup"){ part but cant figure out where its going wrong?? <?php require_once("adminconnect.php"); $tbl_name="adminusers"; $name = mysql_real_escape_string(trim($_POST['name'])); $address = mysql_real_escape_string(trim($_POST['address'])); $address1 = mysql_real_escape_string(trim($_POST['address1'])); $address2 = mysql_real_escape_string(trim($_POST['address2'])); $address3 = mysql_real_escape_string(trim($_POST['address3'])); $county = mysql_real_escape_string(trim($_POST['county'])); $country = mysql_real_escape_string(trim($_POST['country'])); $zip = mysql_real_escape_string(trim($_POST['zip'])); $telephone = mysql_real_escape_string(trim($_POST['telephone'])); $motelephone = mysql_real_escape_string(trim($_POST['motelephone'])); $email = mysql_real_escape_string(trim($_POST['email'])); $password =mysql_real_escape_string(trim($_POST['password'])); $password2 =mysql_real_escape_string(trim($_POST['password2'])); $username = mysql_real_escape_string(trim($_POST['username'])); $birthday = mysql_real_escape_string(trim($_POST['birthdate'])); $birthmonth = mysql_real_escape_string(trim($_POST['birthmonth'])); $birthyear = mysql_real_escape_string(trim($_POST['birthyear'])); $user = mysql_real_escape_string(htmlspecialchars($_POST['username'])); if($_POST["action"] == "signup"){ $valid=1; if ($_POST['name']=="") { echo 'got no name<br>'; $valid=0; $style_name = "background-color:#FF5959"; $error_name = "Your name seems to be mising?<br>"; } if ($address == "" || strlen($address) < 2) { echo 'got no address1<br>';//added by me to denote failure in this statement $valid=0; $style_address = "background-color:#FF5959"; $error_address = "There is a problem with the address field?<br>"; } if ($address1 == "" || strlen($address1) < 2) { echo 'got no address1<br>';//added by me to denote failure in this statement $valid=0; $style_address = "background-color:#FF5959"; $error_address1 = "There is a problem with the address field?<br>"; } if ($address2 == "" || strlen($address2) < 2) { echo 'got no address2<br>';//added by me to denote failure in this statement $valid=0; $style_address = "background-color:#FF5959"; $error_address2 = "There is a problem with the address field?<br>"; } if ($address3 == "" || strlen($address3) < 2) { echo 'got no address3<br>';//added by me to denote failure in this statement $valid=0; $style_address = "background-color:#FF5959"; $error_address3 = "There is a problem with the address field?<br>"; } if ($county == "" || strlen($county)<2) { echo 'got no county<br>'; $valid=0; $style_county = "background-color:#FF5959"; $error_county = "The County field is blank?<br>"; } if ($zip == "" || strlen($zip)<2) { echo 'got no zip<br>'; $valid=0; $style_zip = "background-color:#FF5959"; $error_zip = "Theres a problem with the zip code?<br>"; } if (!eregi("^[0-9]+",$telephone)) { echo 'got no phone<br>'; $valid=0; $style_telephone = "background-color:#FF5959"; $error_telephone = "Theres a problem with the telephone number?<br>"; } if (!eregi("^[A-Za-z0-9.-]+",$email)) { echo 'got no mail'; $valid=0; $style_email = "background-color:#FF5959"; $error_email = "Theres a problem with the email address?<br>"; } if ($password == "" || strlen($password)<5) { echo 'got no password'; $valid=0; $style_password = "background-color:#FF5959"; $error_password = "Theres a problems with your password?<br>"; } $user = mysql_real_escape_string(htmlspecialchars($_POST['username'])); $sql = "SELECT name FROM adminusers WHERE username ='$user'"; $result = mysql_query($sql) or die("Error in SQL: ".mysql_error()); $row = mysql_fetch_array($result); $count = mysql_num_rows($result); $test = $row['name']; if ($count > 0) { // username should only exist once. $valid=0; $style_username = "background-color:#FF5959"; $error_username = "Error! The username " . $user . " already exists in the database."; } if ($password == "" || strlen($password)<7) { $valid=0; $style_password = "background-color:#FF5959"; $error_password = "Theres a problems with your password?<br>"; } if ($valid==1) { $sql="INSERT INTO $tbl_name(name, address, address1, address2, address3, county, country, birthday, birthmonth, birthyear, zip, telephone, email, username, password, password2, usertype)VALUES('$name', '$address', '$address1', '$address2','$address3', '$county' , '$country','$birthday', '$birthmonth', '$birthyear','$zip', '$telephone', '$email', '$user', '$password' , '$password2', 1)"; mysql_query($sql) or die(mysql_error().'<br /> Query was:'.$sql); } } ?> <form name = "form" method="POST" action="register.php"> <tr> <td align="right" width="50%"><span class="t11br">*</span> Name:</td> <td> <input class="byp" type="text" name="name" size="30" maxlength="30" value="<?php $name; ?>""<?php echo $error_name; ?>"> </td> </tr> <tr> <td align="right"><span class="t11br">*</span>Username:</td> <td> <input class="byp" type="text" name="username" size="30" maxlength="30" value="<?php $user; ?>"> </td> </tr> <tr> <td align="right">Address:</td> <td> <input class="byp" type="text" name="address" size="30" maxlength="30" value="<?php $address; ?>"> </td> </tr> <tr> <td align="right">Address line 2:</td> <td> <input class="byp" type="text" name="address2" size="30" maxlength="30" value="<?php $address2 ;?>"> </td> </tr> <tr> <td align="right">Address line 3:</td> <td> <input class="byp" type="text" name="address3" size="30" maxlength="30" value="<?php $address3; ?>"> </td> </tr> <tr> <td align="right"><span class="t11br">*</span> County / State:</td> <td> <input class="byp" type="text" name="county" size="30" maxlength="30" value="<?php $county; ?>"> </td> </tr> <tr> <td align="right"><span class="t11br">*</span> Post/Zip Code:</td> <td> <input class="byp" type="text" name="zip" size="20" maxlength="20" value="<?php $zip; ?>"> </td> </tr> <tr> <td align="right"><span class="t11br">*</span> Country:</td> <td> <select class="byp" name="country"> <option value="" selected></option><option value="GB">United Kingdom</option><option value="US">United States of America</option><option value="AG">Antigua and Barbuda</option><option value="AR">Argentina</option><option value="AU">Australia</option><option value="AT">Austria</option><option value="BS">Bahamas</option><option value="BB">Barbados</option><option value="BE">Belgium</option><option value="BM">Bermuda</option><option value="CA">Canada</option><option value="KY">Cayman Islands</option><option value="TD">Chad</option><option value="CL">Chile</option><option value="CN">China</option><option value="CU">Cuba</option><option value="CY">Cyprus</option><option value="CZ">Czech Republic</option><option value="DK">Denmark</option><option value="EG">Egypt</option><option value="FK">Falkland Islands</option><option value="FO">Faroe Islands</option><option value="FI">Finland</option><option value="FR">France</option><option value="DE">Germany</option><option value="GI">Gibraltar</option><option value="GL">Greenland</option><option value="GD">Grenada</option><option value="VA">Holy See (Vatican City State)</option><option value="HK">Hong Kong</option><option value="IS">Iceland</option><option value="IN">India</option><option value="IE">Ireland</option><option value="IT">Italy</option><option value="JM">Jamaica</option><option value="JP">Japan</option><option value="JO">Jordan</option><option value="KE">Kenya</option><option value="KW">Kuwait</option><option value="LR">Liberia</option><option value="LI">Liechtenstein</option><option value="LU">Luxembourg</option><option value="MS">Montserrat</option><option value="MO">Macau</option><option value="MY">Malaysia</option><option value="MQ">Martinique</option><option value="MR">Mauritania</option><option value="MX">Mexico</option><option value="MC">Monaco</option><option value="NL">Netherlands</option><option value="AN">Netherlands Antilles</option><option value="NZ">New Zealand</option><option value="KP">North Korea</option><option value="NO">Norway</option><option value="OM">Oman</option><option value="PK">Pakistan</option><option value="PA">Panama</option><option value="PY">Paraguay</option><option value="PH">Philippines</option><option value="PL">Poland</option><option value="PT">Portugal</option><option value="PR">Puerto Rico</option><option value="SH">Saint Helena</option><option value="KN">Saint Kitts and Nevis</option><option value="LC">Saint Lucia</option><option value="PM">Saint Pierre and Miquelon</option><option value="VC">Saint Vincent and the Grenadin</option><option value="SM">San Marino</option><option value="SC">Seychelles</option><option value="SG">Singapore</option><option value="ZA">South Africa</option><option value="KR">South Korea</option><option value="ES">Spain</option><option value="LK">Sri Lanka</option><option value="SE">Sweden</option><option value="CH">Switzerland</option><option value="TW">Taiwan</option><option value="TH">Thailand</option><option value="TT">Trinidad and Tobago</option><option value="TN">Tunisia</option><option value="TR">Turkey</option><option value="TC">Turks and Caicos Islands</option><option value="UM">United States Minor Outlying I</option><option value="UY">Uruguay</option><option value="VE">Venezuela</option><option value="VN">Vietnam</option><option value="VG">Virgin Islands (British)</option><option value="VI">Virgin Islands (US)</option> </select> </td> </tr> <tr> <td align="right"><span class="t11br">*</span> Contact Telephone no:</td> <td> <input class="byp" type="text" name="telephone" size="30" maxlength="30" value="<?php $telephone; ?>"> </td> </tr> <tr> <td align="right">Mobile Telephone no:</td> <td> <input class="byp" type="text" name="mobile" size="30" maxlength="30" value="<?php $motelephone; ?>"> </td> </tr> <tr> <td align="right"><span class="t11br">*</span> Birthdate:</td> <td> <select class="byp" name="birthdate"> <option value="<?php $birthday; ?>"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="7">7</option> <option value="8">8</option> <option value="9">9</option> <option value="10">10</option> <option value="11">11</option> <option value="12">12</option> <option value="13">13</option> <option value="14">14</option> <option value="15">15</option> <option value="16">16</option> <option value="17">17</option> <option value="18">18</option> <option value="19">19</option> <option value="20">20</option> <option value="21">21</option> <option value="22">22</option> <option value="23">23</option> <option value="24">24</option> <option value="25">25</option> <option value="26">26</option> <option value="27">27</option> <option value="28">28</option> <option value="29">29</option> <option value="30">30</option> <option value="31">31</option> </select> <select class="byp" name="birthmonth"> <option value="" selected ></option> <option value="Jan">January</option> <option value="Feb">Febuary</option> <option value="March">March</option> <option value="April">April</option> <option value="May">May</option> <option value="June">June</option> <option value="July">July</option> <option value="Aug">August</option> <option value="Sept">September</option> <option value="Oct">October</option> <option value="Nov">November</option> <option value="Dec">December</option> </select> <input class="byp" type="text" name="birthyear" size="4" maxlength="4" value="<?php $birthday; ?>"> <br> (Year Optional eg. 1977 not 77) </td> </tr> <tr> <td align="right">I am:</td> <td> <select class="byp" name="sex"> <option value=""></option> <option value="Male">Male</option> <option value="Female">Female</option> </select> </td> </tr> <tr> <td colspan="2"><img src="http://images-cache.cd-wow.com/images/bluepix.gif" width="100%" height="1"></td> </tr> <tr> <td colspan="2" class="genericside><span class="t11bw">Your email address and password will be used to logon as a WOW! Member.</span></td> </tr> <tr> <td align="right"><span class="t11br">*</span> Email Address: (this will also be used as your username)</td> <td> <input class="byp" type="text" name="email" size="30" maxlength="50" value="<?php $email;?>"> </td> </tr> <tr> <td align="right"><span class="t11br">*</span> Password: (must be at least 5 characters long)</td> <td> <input class="byp" type="password" name="password" size="20" maxlength="20" value="<?php $password;?>"> </td> </tr> <tr> <td align="right"><span class="t11br">*</span> Password Retyped: (To ensure correct typed entry)</td> <td> <input class="byp" type="password" name="password2" size="20" maxlength="20" value="<?php $password2;?>"> </td> </tr> <tr> <td colspan="2"><input type="hidden" name="register" value="true"></td> </tr> <tr> <td colspan="2"><img src="http://images-cache.cd-wow.com/images/bluepix.gif" width="100%" height="1"></td> </tr> <tr><td> </td> <td><input type="submit" type="submit" value="Signup! »"></td> </tr> </form> Link to comment https://forums.phpfreaks.com/topic/99984-validation-not-happening/ Share on other sites More sharing options...
Cep Posted April 7, 2008 Share Posted April 7, 2008 You should never set a validation check to true before it has performed any validation, the reason is, if you miss something out your basically letting the data pass as valid. Link to comment https://forums.phpfreaks.com/topic/99984-validation-not-happening/#findComment-511265 Share on other sites More sharing options...
mikebyrne Posted April 7, 2008 Author Share Posted April 7, 2008 Yeah but in my case it doesnt let any data through untill all requirements are met. I just cant get the error reports to show. Link to comment https://forums.phpfreaks.com/topic/99984-validation-not-happening/#findComment-511267 Share on other sites More sharing options...
Cep Posted April 7, 2008 Share Posted April 7, 2008 Is error reporting set in your php.ini file? E_ALL By the way this is what I mean, <?php // Example data $action = "Test"; /* Value we do not want to appear in our code but we forgot to write a validation if statement for and we were expecting a URL */ $var = "Haxxor!"; $error = ""; if ($action==="Test") { // VERY BAD!!! $valid = 1; if ($var==="badurl") { $valid = 0; $error = "You have a bad url"; } } //Now run my vunerable code with the "haxxor" value! If ($valid===1) { // I must be valid (but I am not) echo "I am a {$var}"; } ?> Link to comment https://forums.phpfreaks.com/topic/99984-validation-not-happening/#findComment-511270 Share on other sites More sharing options...
mikebyrne Posted April 7, 2008 Author Share Posted April 7, 2008 Yeah error reporting is on. The code is taken from another form on my admin section thats working 100% so cant see why this isnt reporting on the screen. I see what you mean about the Valid=1 but I'm running out of time with my degree project here and trying to tidy up my lose coe. Once I get the error validation working I'll get back to what you said Thanks for all your help so far though really appreciated! Link to comment https://forums.phpfreaks.com/topic/99984-validation-not-happening/#findComment-511282 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.