Jump to content

Archived

This topic is now archived and is closed to further replies.

intech

SIMPLE: Array variables not being passed in foreach() statement

Recommended Posts

These foreach() statements have always thrown me for a loop...

I have a simple contact us form with a series of checkboxes where users can request notifications by different formats. They could have 1,2 or any number of boxes checked.

Here is my FORM code:

[code]
<input type="checkbox" name="some_info[]" value="Website Development" />DVD
<input type="checkbox" name="some_info[]" value="Network Solutions" />Email
<input type="checkbox" name="some_info[]" value="Computer Upgrades/Repairs" />Newsletter
[/code]

And here is my foreach() statement:

[code]
foreach($_POST['some_info'] as $some_info) {
    $info = ". $some_info .";
}[/code]

What I get in the email is only the last selection formatted like the following:

Media requested: . Newsletter .

Not all variables are being passed...

My gratitude ahead of time...

Share this post


Link to post
Share on other sites
[code]
echo "<pre>";
print_r($_POST['some_info']);
echo "</pre>";
foreach($_POST['some_info'] as $some_info) {
    $info = ". $it_info .";
}
[/code]

try this, check if all data is posted properly or not.
hth

Share this post


Link to post
Share on other sites
my line...
[code]$info = ". $it_info .";
[/code]
Should read...
[code]$info = ". $some_info .";
[/code]

(But still same problem)

Yep all variables are printed to screen with your debug code...

Share this post


Link to post
Share on other sites
Now we're getting some where...

Changed my line to the following:

[code]$info .= ". $some_info .";[/code]

It does pass all checkbox values to the email now, but I now get the dreaded error:

[quote]Notice: Undefined variable: info [/quote]

Share this post


Link to post
Share on other sites

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.