> Here is my rendition of what I think you are looking for.
> 
> $str = 'tab(  )/space( )/[EMAIL PROTECTED]&*();:...';
> 
> if ( preg_match('|[EMAIL PROTECTED]&*();:_.\\\\ /\t-]+$|', $str) ) {
>       echo 'success';
> } else {
>       echo 'failure';
> }
> 

Here is the problem, and it is strange. If I enter each of the above
characters into my form one at a time and hit submit after each one, NO
error is produced for any of them.

If I cut and past this all at once:  [EMAIL PROTECTED]&*();:_.\ then an error
IS returned.
If I continue to remove one character at a time, submitting the form each
time, errors ARE still produced.

This is the code in a nutshell:

If(isset($submit)) {

        $name = stripslashes($_POST['name']);  >> I have tried this with and
without

        $formerror = array(); unset($result);  >> I have tried this with and
without

        if($result = ValidateString($name)) { $formerror['name'] =
$invalidcharacters;

        Function ValidateString($string) {
                if (!preg_match('|[EMAIL PROTECTED]&*();:_.\\\\ /\t-]+$|',
$string) ) {
                return invalidchars;
                }
        }
}

<Form Stuff>
<input name="name" size="30" type="text">
</form>



Thanks

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to