Re: Mystery foreach error

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 12.03.13 20:45, schrieb Angela Barone:
> 	I've been getting the following error for awhile now, but I can't figure out why it's happening:
>
> Invalid argument supplied for foreach() in ... sample.php on line 377
>
> 	Here's that portion of code:
>
> include("states_zipcodes.php");
>
> // Check if Zip Code matches from states_zipcodes
> $zip_short = substr($zip, 0, 3);
> foreach ($states[$state] as &$zip_prefix) {   // <-- line 377

what is in $states?
Looks like $states[$state] is not an array.

And don't use & reference operator in foreach loop, there can be strange
side effects if you don't act carefully with it.

>     if ($zip_prefix == $zip_short) {
>         break;
>     } else {
>         $match = 'no';
>     }
> }
>
> 	It doesn't happen all the time, so I'm thinking that some spambot is populating the HTML form with something the script doesn't like(?).  However, I tested that myself by entering text, or by entering just 2 digits, but there was no error.  FYI, I do have code in the script that catches faulty input and warns people in their browser to go back and re-enter the correct data, so I'm at a loss as to why this is happening.
>
> 	How can I see what's triggering this to happen?  I have the following line in my php.ini:
>
> error_reporting = E_ALL & E_STRICT & E_NOTICE & E_DEPRECATED
>
> Thank you,
> Angela


-- 
Marco Behnke
Dipl. Informatiker (FH), SAE Audio Engineer Diploma
Zend Certified Engineer PHP 5.3

Tel.: 0174 / 9722336
e-Mail: marco@xxxxxxxxxx

Softwaretechnik Behnke
Heinrich-Heine-Str. 7D
21218 Seevetal

http://www.behnke.biz


Attachment: signature.asc
Description: OpenPGP digital signature


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux