wblati Posted November 15, 2008 Share Posted November 15, 2008 hi, ive got this code in java script where it generates an error message with a red cross when a field is empty. now what im looking for is to do the validation and error messaging in php. <html> <head> <style type=text/css> input.blue {background-color: #0066FF; font-weight: bold; font-size: 12px; color: white;} input.violet {background-color: #ccccff; font-size: 14px;} textarea.violet {background-color: #ccccff; font-size: 14px;} option.red {background-color: #cc0000; font-weight: bold; font-size: 14px; color: white;} option.pink {background-color: #ffcccc;} .style2 { color: #990000; font-weight: bold; font-size: 36px; font-family: Verdana, Arial, Helvetica, sans-serif; } .style5 {font-family: Arial, Helvetica, sans-serif; font-weight: bold; } .style6 {font-family: Arial, Helvetica, sans-serif} body { background-color: #FFFFCC; } </style> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head> <title>MOVIE BOOKING</title> <script type='text/javascript'> function report()// TAKEN FROM http://www.tizag.com/javascriptT/javascriptform.php { if (formValidator()) { var thisForm = document.myForm; } } function formValidator() { var errors = new Array(); // Check name field if(empty('nameOnCard') || !isAlphabet('nameOnCard')) { document.getElementById('nameOnCard_err').style.visibility = ''; errors[errors.length] = "Name is required and must contain only alpha characters"; } else { document.getElementById('nameOnCard_err').style.visibility = 'hidden'; } // Check email field if(empty('email') || !validEmail('email')) { document.getElementById('email_err').style.visibility = ''; errors[errors.length] = "Email is not valid"; } else { document.getElementById('email_err').style.visibility = 'hidden'; } if (errors.length==0) { return true; } var error_msg = 'The following errors occured:\n\n'; for (i=0; i<errors.length; i++) { error_msg += ' - ' + errors + '\n'; } alert(error_msg); return falses; } function empty(elem_id) { return (document.getElementById(elem_id).value.length == 0); } function isAlphabet(elem_id) { var alphaExp = /^[a-zA-Z]+$/; return document.getElementById(elem_id).value.match(alphaExp); } function validEmail(elem_id){ var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/; return document.getElementById(elem_id).value.match(emailExp); } // CALCULATIONS TAKEN OUT------------------------------------------------------------------------------------------------------------ /* function CheckChoice(whichbox)//TAKEN FROM http://javascript.internet.com/forms/order-form.html { with (whichbox.form) { if (whichbox.type == "radio") { hiddentotal.value = eval(hiddentotal.value) - eval(hiddenpriorradio.value); hiddenpriorradio.value = eval(whichbox.price); hiddentotal.value = eval(hiddentotal.value) + eval(whichbox.price); } else { if (whichbox.checked == false) { hiddentotal.value = eval(hiddentotal.value) - eval(whichbox.value); } else { hiddentotal.value = eval(hiddentotal.value) + eval(whichbox.value); } } if (hiddentotal.value < 0) { InitForm(); } return(formatCurrency(hiddentotal.value)); } } function formatCurrency(num)//TAKEN FROM http://javascript.internet.com/forms/order-form.html { num = num.toString().replace(/\$|\,/g,''); if(isNaN(num)) num = "0"; sign = (num == (num = Math.abs(num))); num = Math.floor(num*100+0.50000000001); cents = num%100; num = Math.floor(num/100).toString(); if(cents<10) cents = "0" + cents; for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++) num = num.substring(0,num.length-(4*i+3))+','+ num.substring(num.length-(4*i+3)); return (((sign)?'':'-') + '£' + num + '.' + cents); } function InitForm()//TAKEN FROM http://javascript.internet.com/forms/order-form.html { //Reset the displayed total on form: document.myform.total.value='£0'; document.myform.hiddentotal.value=0; document.myform.hiddenpriorradio.value=0; document.myform2.total.value='£0'; document.myform2.hiddentotal.value=0; document.myform2.hiddenpriorradio.value=0; document.myform2.hiddenpriorradio.value=0; for (xx=0; xx < document.myform.elements.length; xx++) { if (document.myform.elements[xx].type == 'checkbox' | document.myform.elements[xx].type == 'radio') { document.myform.elements[xx].checked = false; } } for (xx=0; xx < document.myform2.elements.length; xx++) { if (document.myform2.elements[xx].type == 'checkbox' | document.myform2.elements[xx].type == 'radio') { document.myform2.elements[xx].checked = false; } } } ---------------------------------------------------------------------------------------------------------------------------------------*/ </script> <body> <FORM NAME="myForm" action="http://localhost/adw%20php_v3/response%20cinema%20booking_v1.php" METHOD="POST" onSubmit="return formValidator();"> <div align="center"><span class="style2">ONLINE MOVIE BOOKING </span> </div> <div align="center"> <table width="444" border="1"> <tr> <td><span class="style5">NAME ON CARD: </span><span id="nameOnCard_err" style="color:red;visibility:hidden;" title="Name is required and must contain only letters">[X]</span></td> <td><input name="text" type='text' class="violet " id='nameOnCard'></td> </tr> <tr> <td><span class="style5">EMAIL: </span><span id="email_err" style="color:red;visibility:hidden;" title="Email is empty or not valid">[X]</span></td> <td><input name="text2" type='text' class="violet " id='email' /></td> </tr> <tr> <td><span class="style5">CARD NUMBER: </span></td> <td><input name="number" type='number' class="violet " id='cardNumber'></td> </tr> <tr> <td><span class="style5">CARD TYPE: </span></td> <td><span class="style6"> <select name="select" id='cardType'> <option class="red" >Please Choose</option> <option class="pink" >VISA</option> <option class="pink" >Mastercard</option> <option class="pink" >American Express</option> </select> </span></td> </tr> <tr> <td><span class="style5"><br /> MOVIES: </span></td> <td><span class="style6"> <select name="select2" id='movie'> <option class="red" >Please Choose</option> <option class="pink" >Burn After Reading</option> <option class="pink" >Planet Terror</option> <option class="pink" >Tropic Thunder</option> <option class="pink" >Quantum of solace</option> </select> </span></td> </tr> <tr> <td><span class="style5">DATE: </span></td> <td><span class="style6"> <select name="select3" id='date'> <option class="red" >Please Choose</option> <option class="pink" >October 20</option> <option class="pink" >October 21</option> <option class="pink" >October 22</option> <option class="pink" >October 23</option> <option class="pink" >October 24</option> <option class="pink" >October 25</option> <option class="pink" >October 26</option> <option class="pink" >October 27</option> </select> </span></td> </tr> <tr> <td><span class="style5"><br /> TIME: </span></td> <td><span class="style6"> <input type="radio" value="10:40am" name="time" /> 10:40am<br /> <input type="radio" value="1:00pm" name="time" /> 1:00pm<br /> <input type="radio" value="3:50pm" name="time" /> 3:50pm<br /> <input type="radio" value="6:10pm" name="time" /> 6:10pm<br /> <input type="radio" value="8:40pm" name="time" /> 8:40pm<br /> <input type="radio" value="9:10pm" name="time" /> 9:10pm</span></td> </tr> </table> </div> <p align="center"><br> <textarea rows="5" cols="36" name="info" readonly></textarea> </p> <p align="center"> <input class="blue" type="button" name="buttont" value="SUBMIT" onClick= "report()"> </p> <p align="center"> <input class="blue" name="Submit2" type="reset" value="CLEAR ALL FIELDS" /> </p> </form> </body> </html> Link to comment https://forums.phpfreaks.com/topic/132838-help-error-message-and-validation-in-php/ Share on other sites More sharing options...
runnerjp Posted November 15, 2008 Share Posted November 15, 2008 <?php if (isset($_POST['yourpost']) && trim($_POST['yourpost']) == "") { $errMsgPost = "Error: You did not enter any text."; //no post entered ?> Link to comment https://forums.phpfreaks.com/topic/132838-help-error-message-and-validation-in-php/#findComment-690841 Share on other sites More sharing options...
Andy-H Posted November 15, 2008 Share Posted November 15, 2008 if ( !isset($_POST['fieldName']) || !ctype_alpha($_POST['fieldName']) ){ //process error }else{ //continue... Link to comment https://forums.phpfreaks.com/topic/132838-help-error-message-and-validation-in-php/#findComment-690842 Share on other sites More sharing options...
wblati Posted November 15, 2008 Author Share Posted November 15, 2008 im kind of new to php so i really dont know how to use the bits of codes to get my form to work. Link to comment https://forums.phpfreaks.com/topic/132838-help-error-message-and-validation-in-php/#findComment-690845 Share on other sites More sharing options...
runnerjp Posted November 15, 2008 Share Posted November 15, 2008 you stick it after the if post statement... http://www.php-mysql-tutorial.com/form-validation-with-php.php Link to comment https://forums.phpfreaks.com/topic/132838-help-error-message-and-validation-in-php/#findComment-690849 Share on other sites More sharing options...
wblati Posted November 15, 2008 Author Share Posted November 15, 2008 i added a few bits of php code which are in BOLD and im getting this error. "Parse error: syntax error, unexpected ';' in C:\wamp\www\adw php_v3\php cinema booking.php on line 6" <?php if(isset($_POST)) { $name_error_vis = (empty($_POST['text']) || !ctype_alpha($_POST['text'])) ? '' : 'hidden'; $name_error_vis = (empty($_POST['text2']) || !valid_email($_POST['text2']) ? '' : 'hidden'; <<<<< THIS IS LINE 6>>>>> } else { $name_error_vis = 'hidden'; $email_error_vis = 'hidden'; } function valid_email($email) { $formatTest = '/^[-\w+]+(\.[-\w+]+)*@[-a-z\d]{2,}(\.[-a-z\d]{2,})*\.[a-z]{2,6}$/i'; $lengthTest = '/^(.{1,64})@(.{4,255})$/'; return (preg_match($formatTest, $email) && preg_match($lengthTest, $email)); } ?> <html> <head> <style type=text/css> input.blue {background-color: #0066FF; font-weight: bold; font-size: 12px; color: white;} input.violet {background-color: #ccccff; font-size: 14px;} textarea.violet {background-color: #ccccff; font-size: 14px;} option.red {background-color: #cc0000; font-weight: bold; font-size: 14px; color: white;} option.pink {background-color: #ffcccc;} .style2 { color: #990000; font-weight: bold; font-size: 36px; font-family: Verdana, Arial, Helvetica, sans-serif; } .style5 {font-family: Arial, Helvetica, sans-serif; font-weight: bold; } .style6 {font-family: Arial, Helvetica, sans-serif} body { background-color: #FFFFCC; } </style> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head> <title>MOVIE BOOKING</title> <script type='text/javascript'> function report()// TAKEN FROM http://www.tizag.com/javascriptT/javascriptform.php { if (formValidator()) { var thisForm = document.myForm; } } function formValidator() { var errors = new Array(); // Check name field if(empty('nameOnCard') || !isAlphabet('nameOnCard')) { document.getElementById('nameOnCard_err').style.visibility = ''; errors[errors.length] = "Name is required and must contain only alpha characters"; } else { document.getElementById('nameOnCard_err').style.visibility = 'hidden'; } // Check email field if(empty('email') || !validEmail('email')) { document.getElementById('email_err').style.visibility = ''; errors[errors.length] = "Email is not valid"; } else { document.getElementById('email_err').style.visibility = 'hidden'; } if (errors.length==0) { return true; } var error_msg = 'The following errors occured:\n\n'; for (i=0; i<errors.length; i++) { error_msg += ' - ' + errors + '\n'; } alert(error_msg); return falses; } function empty(elem_id) { return (document.getElementById(elem_id).value.length == 0); } function isAlphabet(elem_id) { var alphaExp = /^[a-zA-Z]+$/; return document.getElementById(elem_id).value.match(alphaExp); } function validEmail(elem_id){ var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/; return document.getElementById(elem_id).value.match(emailExp); } function validEmail(emailStr) { //Return true/false for valid/invalid email formatTest = /^[-\w+]+(\.[-\w+]+)*@[-a-z\d]{2,}(\.[-a-z\d]{2,})*\.[a-z]{2,6}$/i lengthTest = /^(.{1,64})@(.{4,255})$/ return (formatTest.test(emailStr) && lengthTest.test(emailStr)); } // CALCULATIONS TAKEN OUT------------------------------------------------------------------------------------------------------------ /* function CheckChoice(whichbox)//TAKEN FROM http://javascript.internet.com/forms/order-form.html { with (whichbox.form) { if (whichbox.type == "radio") { hiddentotal.value = eval(hiddentotal.value) - eval(hiddenpriorradio.value); hiddenpriorradio.value = eval(whichbox.price); hiddentotal.value = eval(hiddentotal.value) + eval(whichbox.price); } else { if (whichbox.checked == false) { hiddentotal.value = eval(hiddentotal.value) - eval(whichbox.value); } else { hiddentotal.value = eval(hiddentotal.value) + eval(whichbox.value); } } if (hiddentotal.value < 0) { InitForm(); } return(formatCurrency(hiddentotal.value)); } } function formatCurrency(num)//TAKEN FROM http://javascript.internet.com/forms/order-form.html { num = num.toString().replace(/\$|\,/g,''); if(isNaN(num)) num = "0"; sign = (num == (num = Math.abs(num))); num = Math.floor(num*100+0.50000000001); cents = num%100; num = Math.floor(num/100).toString(); if(cents<10) cents = "0" + cents; for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++) num = num.substring(0,num.length-(4*i+3))+','+ num.substring(num.length-(4*i+3)); return (((sign)?'':'-') + '£' + num + '.' + cents); } function InitForm()//TAKEN FROM http://javascript.internet.com/forms/order-form.html { //Reset the displayed total on form: document.myform.total.value='£0'; document.myform.hiddentotal.value=0; document.myform.hiddenpriorradio.value=0; document.myform2.total.value='£0'; document.myform2.hiddentotal.value=0; document.myform2.hiddenpriorradio.value=0; document.myform2.hiddenpriorradio.value=0; for (xx=0; xx < document.myform.elements.length; xx++) { if (document.myform.elements[xx].type == 'checkbox' | document.myform.elements[xx].type == 'radio') { document.myform.elements[xx].checked = false; } } for (xx=0; xx < document.myform2.elements.length; xx++) { if (document.myform2.elements[xx].type == 'checkbox' | document.myform2.elements[xx].type == 'radio') { document.myform2.elements[xx].checked = false; } } } ---------------------------------------------------------------------------------------------------------------------------------------*/ </script> <body> <FORM NAME="myForm" action="http://localhost/adw%20php_v3/response%20cinema%20booking_v1.php" METHOD="POST" onSubmit="return formValidator();"> <div align="center"><span class="style2">ONLINE MOVIE BOOKING </span> </div> <div align="center"> <table width="444" border="1"> <tr> <td> <span class="style5">NAME ON CARD: </span> <span id="nameOnCard_err" style="color:red;visibility:<?php echo $name_error_vis; ?>;" title="Name is required and must contain only letters">[X]</span> </td> <td><input name="text" type='text' class="violet " id='nameOnCard'></td> </tr> <tr> <td> <span class="style5">EMAIL: </span> <span id="email_err" style="color:red;visibility:<?php echo $name_error_vis; ?>;" title="Email is empty or not valid">[X]</span> </td> <td><input name="text2" type='text' class="violet " id='email' /></td> </tr> <td><span class="style5">CARD NUMBER: </span></td> <td><input name="number" type='number' class="violet " id='cardNumber'></td> </tr> <tr> <td><span class="style5">CARD TYPE: </span></td> <td><span class="style6"> <select name="select" id='cardType'> <option class="red" >Please Choose</option> <option class="pink" >VISA</option> <option class="pink" >Mastercard</option> <option class="pink" >American Express</option> </select> </span></td> </tr> <tr> <td><span class="style5"><br /> MOVIES: </span></td> <td><span class="style6"> <select name="select2" id='movie'> <option class="red" >Please Choose</option> <option class="pink" >Burn After Reading</option> <option class="pink" >Planet Terror</option> <option class="pink" >Tropic Thunder</option> <option class="pink" >Quantum of solace</option> </select> </span></td> </tr> <tr> <td><span class="style5">DATE: </span></td> <td><span class="style6"> <select name="select3" id='date'> <option class="red" >Please Choose</option> <option class="pink" >October 20</option> <option class="pink" >October 21</option> <option class="pink" >October 22</option> <option class="pink" >October 23</option> <option class="pink" >October 24</option> <option class="pink" >October 25</option> <option class="pink" >October 26</option> <option class="pink" >October 27</option> </select> </span></td> </tr> <tr> <td><span class="style5"><br /> TIME: </span></td> <td><span class="style6"> <input type="radio" value="10:40am" name="time" /> 10:40am<br /> <input type="radio" value="1:00pm" name="time" /> 1:00pm<br /> <input type="radio" value="3:50pm" name="time" /> 3:50pm<br /> <input type="radio" value="6:10pm" name="time" /> 6:10pm<br /> <input type="radio" value="8:40pm" name="time" /> 8:40pm<br /> <input type="radio" value="9:10pm" name="time" /> 9:10pm</span></td> </tr> </table> </div> <p align="center"><br> <textarea rows="5" cols="36" name="info" readonly></textarea> </p> <p align="center"> <input class="blue" type="button" name="buttont" value="SUBMIT" onClick= "report()"> </p> <p align="center"> <input class="blue" name="Submit2" type="reset" value="CLEAR ALL FIELDS" /> </p> </form> </body> </html> Link to comment https://forums.phpfreaks.com/topic/132838-help-error-message-and-validation-in-php/#findComment-690881 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.