petenaylor Posted October 29, 2010 Share Posted October 29, 2010 Hi all I am trying to do an email validation check. Here's my code: if (!preg_match($email) == "^[a-z0-9]+([-_\.]?[a-z0-9])+@[a-z0-9]+([-_\.]?[a-z0-9])+\.[a-z]") { include("checkout-email-error.php"); exit; } It doesn't seem to allow any email addresses through? All help greatly appreciated! Thanks Pete Link to comment https://forums.phpfreaks.com/topic/217193-preg-match-email/ Share on other sites More sharing options...
salathe Posted October 29, 2010 Share Posted October 29, 2010 Check the PHP manual page for preg_match, which will tell you how to properly use that function. See http://php.net/preg_match Link to comment https://forums.phpfreaks.com/topic/217193-preg-match-email/#findComment-1127970 Share on other sites More sharing options...
rwwd Posted October 29, 2010 Share Posted October 29, 2010 I have found this useful for this, it negates the need for doing preg_match() on a $var:- if(!filter_var($input, FILTER_VALIDATE_EMAIL)){ echo "Email is not valid"; exit; } Kinda cool if your not much good at regex! But if you want your preg_match() in there, use this:- if (!preg_match("/^([a-z]|[0-9]|\.|-|_)+@([a-z]|[0-9]|\.|-|_)+\.([a-z]|[0-9]){2,4}$/i", $input)){ echo "Email isn't valid"; exit; } Rw Link to comment https://forums.phpfreaks.com/topic/217193-preg-match-email/#findComment-1127976 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.