intech Posted September 1, 2006 Share Posted September 1, 2006 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... Link to comment https://forums.phpfreaks.com/topic/19361-simple-array-variables-not-being-passed-in-foreach-statement/ Share on other sites More sharing options...
samshel Posted September 1, 2006 Share Posted September 1, 2006 [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 Link to comment https://forums.phpfreaks.com/topic/19361-simple-array-variables-not-being-passed-in-foreach-statement/#findComment-84006 Share on other sites More sharing options...
intech Posted September 1, 2006 Author Share Posted September 1, 2006 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... Link to comment https://forums.phpfreaks.com/topic/19361-simple-array-variables-not-being-passed-in-foreach-statement/#findComment-84017 Share on other sites More sharing options...
Jenk Posted September 1, 2006 Share Posted September 1, 2006 change the assignment operator to .= instead of just = Link to comment https://forums.phpfreaks.com/topic/19361-simple-array-variables-not-being-passed-in-foreach-statement/#findComment-84021 Share on other sites More sharing options...
intech Posted September 1, 2006 Author Share Posted September 1, 2006 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] Link to comment https://forums.phpfreaks.com/topic/19361-simple-array-variables-not-being-passed-in-foreach-statement/#findComment-84022 Share on other sites More sharing options...
Jenk Posted September 1, 2006 Share Posted September 1, 2006 add [code]$info = '';[/code] before your loop. Link to comment https://forums.phpfreaks.com/topic/19361-simple-array-variables-not-being-passed-in-foreach-statement/#findComment-84027 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.