sudhakararaog Posted May 26, 2008 Share Posted May 26, 2008 i have used the following code to validate the username it is working fine ============================================= if( $username == "" || !preg_match("/^[a-z0-9]+(?:_[a-z0-9]+)?$/i", $username) ) { $error.="User name cannot be blank or has special characters"; } ============================================= it does not accept UNDERSCORE at the beginning or end however while i was testing with different special characters except for # the validation works fine for all other special characters. for example if i enter the user name as = abc#123 in this case # sign and what comes after # sign is being ignored. so in this case the username is being read as abc ONLY and not abc#123 this is very strange, how can i still validate # sign and tell the user that # sign is not a valid username like i have been doing with any other special characters like = !@$........... please advice. thanks. Link to comment https://forums.phpfreaks.com/topic/107280-validating-username/ Share on other sites More sharing options...
Dathremar Posted May 26, 2008 Share Posted May 26, 2008 I am using this function for checking a valid username: function Valid_username($username) { if (ereg('^[a-zA-Z0-9]+$', $username)) return true; else return false; } and it does take into consideration the # character. Try it out. Link to comment https://forums.phpfreaks.com/topic/107280-validating-username/#findComment-550060 Share on other sites More sharing options...
sasa Posted May 26, 2008 Share Posted May 26, 2008 Where is $username setup? Link to comment https://forums.phpfreaks.com/topic/107280-validating-username/#findComment-550062 Share on other sites More sharing options...
tomtom Posted May 26, 2008 Share Posted May 26, 2008 Sasa. function Valid_username($username) { if (ereg('^[a-zA-Z0-9]+$', $username)) return true; else return false; } That's the function, $username is a variable. So when you call the function, you replace $username with whatever. So you'd have that above your code. Then say a user submitted a username (e.g $_POST[username]); you could then do... <?php if(Valid_username({$_POST['username']})) { // Valid_username has returned true, so the username is valid echo "Wahay! The username is valid!"; }else{ // Valid_username has returned false, so the username isn't valid echo "That username is not valid, sorry!"; } ?> Link to comment https://forums.phpfreaks.com/topic/107280-validating-username/#findComment-550114 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.