Re: Forms : Validating user input is integer
| From: | Boclair | Date: | Thu, 05 Apr 2001 10:58:09 +0000 |
| Subject: | Re: Forms : Validating user input is integer | ||
| References: | 1 | Groups: | php.db |
| Request: | Send a blank email to php-db+get-8258@lists.php.net to get a copy of this message | ||
"boclair" <boclair@bigpond.net.au> wrote in message
news:002101c0bd8e$30742e60$7ac22dcb@qld.bigpond.net.au...
| I have a problem with a user input in a form required to be an
| integer, creating a variable for a mysql query.
|
| I have instances where integer, 0, is being typed as letter,o.
|
| The last discussion of validating the input was
| http://marc.theaimsgroup.com/?l=php-db&m=97207172003983&w=2
|
| There it was suggested that the only way to validate the input was
| using javascript. I have a case where clients have disabled
| javascript.
For those who may be interested here is the server side method using
eregi() as explained by Matt Williams
xxxxxxxxxxxxxxxxxxxxxxxxxx
----- Original Message -----
From: Matt Williams <matt@yewlands.com>
To: boclair <boclair@bigpond.net.au>
Sent: Thursday, April 05, 2001 8:05 PM
Subject: RE: [PHP-DB] Forms : Validating user input is integer
> try elseif(!eregi("[0-9]",$num))
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))
This gives the full script as
_____________________________
<?
if ((@!$submit) || empty($num) )
{
echo "<div align='center'><span class='note'>No entry
was
made</span></div>";
include "get_id.php";
}
elseif(!eregi("[0-9]",$num) || eregi("[a-z]",$num))
{
echo "<div align='center'><span class='note'>Entry
error. The
ID should have been a number.</span></div>";
include "get_id.php";
}
else
{
include "do_form.php";
}
?>
_____________________
Agreed?
Tim
xxxxxxxxxxxxxxxxxxxx