Re: Forms : Validating user input is integer
| From: | Boclair | Date: | Thu, 05 Apr 2001 12:29:52 +0000 |
| Subject: | Re: Forms : Validating user input is integer | ||
| References: | 1 2 | Groups: | php.db |
| Request: | Send a blank email to php-db+get-8265@lists.php.net to get a copy of this message | ||
"boclair" <boclair@bigpond.net.au> wrote in message
news:004801c0bdc7$13afbe00$7ac22dcb@qld.bigpond.net.au...
|
| ----- Original Message -----
| From: Matt Williams <matt@yewlands.com>
| To: boclair <boclair@bigpond.net.au>
| Sent: Thursday, April 05, 2001 9:03 PM
| Subject: RE: [PHP-DB] Forms : Validating user input is integer
|
|
| >
| > > To gain the full benefit of your suggestion I find that I can
| validate
| > > for a wrong entry containing a mix alphabetical and numerical
| > > characters by altering the elseif line to read
| > >
| > > elseif (!eregi("[0-9]",$num) || eregi("[a-z]",$num))
| > >
| > > Agreed?
| > >
| >
| > mmmm yes and no.
| >
| > I've done a lot of testing for this and using just the first one
has
| never
| > let any values of $num through unles they've contained only
numbers.
| > AFAIK (!eregi("[0-9]",$num) should always return false or 0 or
| whatever it
| > is unless it contains only numbers.
|
| xxxxxxxxxxxx
| When I used only elseif (!eregi("[0-9]",$num) { }
| an input 2i passed the variable 2
| xxxxxxxxxxxx
|
| > You could also use [^a-zA-Z] for letters you don't want.
| > so maybe something like (!eregi("([0-9]||[^a-zA-Z])",$num))
| > not tried so don't rely on that.
|
| xxxxxxxxxxxxxx
| correcting some typos this does the job elegantly. Should read
|
| elseif (!eregi(("[0-9]" || "[^a-zA-Z]"),$num)){ }
| xxxxxxxxxxxxxx
or even just
elseif (!eregi("[^a-zA-Z]"),$num)) { }
Tim Morris