Re: problem with foreach

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

 



Robert Cummings wrote:
On Mon, 2007-10-22 at 18:07 +0100, Stut wrote:
Adam Williams wrote:
I have an html page with checkboxes:

<form action=mailform2.php method=POST>
<input type=checkbox name=option[] value="Modern Mississippi">Modern Mississippi<br>
<input type=checkbox name=option[] value="Civil Rights">Civil Rights<br>
<input type=checkbox name=option[] value="Military History">MilitaryHistory<br>
<input type=submit name=submit value=Submit>

and mailform2.php containing:

echo "you selected: <br>";
/* line 81 */ foreach ($_POST[option] as $a)
       {
       echo "$a";
       }

but I'm getting the error:

you selected:

*Warning*: Invalid argument supplied for foreach() in */var/www/sites/mdah-test/museum/mmhsurvey/mailform2.php* on line *81*

I googled some checkbox/foreach pages on google, but I don't see where I'm going wrong. I'm running php 5.2.5 on Apache 2.2.4 on Fedora Linux. Any help?
Turn notices on. You will then get lots of notices about the use of an undefined constant "option".

You should be using $_POST['option'] instead - notice the quotes.

Your HTML should really have double quotes around the attributes but that's beyond the scope of this list.

He's still going to get an invalid argument warning though since PHP
will automatically convert the unquoted key to a string and then look up
the value. The problem is that the value doesn't exist or is not an
array as expected.

Good point. Has the OP checked any of the boxes? If not then that array will not exist in $_POST.

-Stut

--
http://stut.net/

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


[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