hus123 Posted March 18, 2008 Share Posted March 18, 2008 :'( hi there, i have a simple form which i created using php with a submit button which sends the details to a mysql database once it is pressed. i am having difficulty with creating a validation for the email (for example should include the @ sign etc). can anyone help me please? Link to comment https://forums.phpfreaks.com/topic/96803-php-email-validation-help/ Share on other sites More sharing options...
Jeremysr Posted March 18, 2008 Share Posted March 18, 2008 Here's how to use regex to validate it (I got it from regular-expressions.info): $email_is_valid = preg_match('/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i', $email); Link to comment https://forums.phpfreaks.com/topic/96803-php-email-validation-help/#findComment-495386 Share on other sites More sharing options...
AdRock Posted March 18, 2008 Share Posted March 18, 2008 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; } that is the function for checking an email address if(!check_email_address($email)) { $message="Email address in invalid format"; } how you would check the email address Link to comment https://forums.phpfreaks.com/topic/96803-php-email-validation-help/#findComment-495390 Share on other sites More sharing options...
hus123 Posted March 18, 2008 Author Share Posted March 18, 2008 hey thanks for the reply, i tried the code but it still seems to be sending the data straight to the database once the submit button is pressed. any idea what i can do ?? Link to comment https://forums.phpfreaks.com/topic/96803-php-email-validation-help/#findComment-495393 Share on other sites More sharing options...
AdRock Posted March 18, 2008 Share Posted March 18, 2008 can you post your script? Link to comment https://forums.phpfreaks.com/topic/96803-php-email-validation-help/#findComment-495396 Share on other sites More sharing options...
hus123 Posted March 18, 2008 Author Share Posted March 18, 2008 i do not have the code with me at the moment, but from what i remmeber the email section looks something like this. thanks alot for this. <? enter your email : <br /> <input type=\"text\" name=\"email\" value=\"email\"> <br /> <br /> <input type=\"submit\" value=\"submit\"><br /><br />"; if($_GET['action'] == 'form') { $sql="INSERT INTO $tbl_name(email)VALUES(''$email')"; $result=mysql_query($sql); } ?> Link to comment https://forums.phpfreaks.com/topic/96803-php-email-validation-help/#findComment-495407 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.