# phpuser@xxxxxxxxxx / 2007-01-15 18:33:31 -0500: > > From: Roman Neuhauser [mailto:neuhauser@xxxxxxxxxx] > > # phpuser@xxxxxxxxxx / 2007-01-15 16:31:32 -0500: > > > I have file which I use for validating which includes the following > > > function: > > > > > > function invalidchar($strvalue) > > > { > > > if(!ereg("^[[:alpha:][:space:]\'-.]*$", $strvalue)) { > > > > That regexp matches if $strvalue consists of zero or more > > ocurrences of a letter, a whitespace character, and any > > character whose numeric value lies between the numeric values > > of "'" and "." in your locale. > > Zero or more means it also matches an empty string. > > I'm still confused. This works perfectly on my other two pages with the > exact same code. So why is it only this one page that is causing a problem? I don't know, I don't care. You have enough problems with the single regex, let's concentrate on fixing this first. > If I enter the word "test" in my form, without the quotes, then why is the > fuction returning anything since this is a valid entry. Should it not only > return a value if there is a problem. I don't understand that paragraph. The regexp matches, and the function returns *nothing* just as you programmed it. That, of course, means that the variable you are assigning this *nothing* gets set to *nothing*, which, in PHP lingo, is null. > All I want to accomplish here is to allow the user to enter a to z, A to Z, > and /\'-_. and a space. Is there a better way to do this? 1. Do you really want to let them enter backslashes, or are you trying to "escape" the apostrophe? 2. Does that mean that "/\'-_." (without the quotes) and " " (that's three spaces) are valid entries? -- How many Vietnam vets does it take to screw in a light bulb? You don't know, man. You don't KNOW. Cause you weren't THERE. http://bash.org/?255991 -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php