Re: Warning: Division by zero
| From: | Gary | Date: | Thu, 30 Apr 2009 13:11:11 +0000 |
| Subject: | Re: Warning: Division by zero | ||
| References: | 1 2 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-292153@lists.php.net to get a copy of this message | ||
Thanks for your response.
The error I am getting is when I am defining a variable.
(line 15) $percent_difference=($assess_difference)/($assess_value);
Does this make a difference?
Thanks again for all your help.
Gary
"Christoph Boget" <christoph.boget@gmail.com> wrote in message
news:540509760904300600i7af94667w6bad30ed068d1937@mail.gmail.com...
>> I have a script that is a result of data entered in a form
>> On the script (when I test without data entry), I am getting a warning
>> that
>> Warning: Division by zero in .inc.php on line 15.
>> The warning is correct, however the viewer cannot access the second
>> script
>> without entering the data that would cancel the warning.
>> Is this something I should worry about? or would it be better to right in
>> an
>> isset?
>
> Well, just as a general rule, you'll want to validate all possible
> user input. That includes checking whether or not particular input
> has been defined, whether or not it is valid for it's intended use and
> whether or not it's malicious.
>
> Applying that guideline to your situation, I would check to see if:
>
> * the input is set
> * the input is numeric
>
> If either or those are not true, I would default the value to 1 since
> division is being used. e.g.,
>
> $iVar = 1;
> if(( isset( $_REQUEST['MY_NUMBER'] ) && ( is_numeric(
> $_REQUEST["MY_NUMBER']))) {
> $iVar = $_REQUEST['MY_NUMBER'];
> }
>
> $iCalculatedValue = $x / $iVar;
>
> thnx,
> Christoph