Forum Moderators: coopster
<FORM ACTION="test.php" METHOD=POST>
<TABLE border="1" width="70%" >
<TR>
<td><input type="checkbox" name="NewClass[]" value="Mon" size="5" maxlength="2"> </td>
<td><input type="checkbox" name="NewClass[]" value="Tue" size="5" maxlength="2"> </td>
<td><input type="checkbox" name="NewClass[]" value="Wed" size="5" maxlength="2"> </td>
<td><input type="checkbox" name="NewClass[]" value="Thu" size="5" maxlength="2"> </td>
<td><input type="checkbox" name="NewClass[]" value="Fri" size="5" maxlength="2"> </td>
<td><input type="checkbox" name="NewClass[]" value="Sat" size="5" maxlength="2"> </td>
<td><input type="checkbox" name="NewClass[]" value="Sun" size="5" maxlength="2"> </td>
<TD><input type="text" name="NewClass-Time" size="5" maxlength="10"></TD>
</TR>
</TABLE>
<input type="submit" name="ClassList" value="Submit Survey Info" class="button">
</form>
When I print out print_r($_POST);, I get everything passed correctly as in:
Array
(
[NewClass] => Array
(
[0] => Wed
[1] => Fri
)
[NewClass-Time] => 9:00 am
)
But when it gets mailed, the results listed on the email are as follows:
NewClass: Array
NewClass-Time: 9:00 am
I stripped the processing script down to the barest of essentials. All that's on it right now is:
foreach($_POST as $key => $value){if(!(!isset($value))){$set=1;}$message = $message . "$key: $value\n\n";} if($set!==1){header("location: $_SERVER[HTTP_REFERER]");exit;}
$message = stripslashes($message);
$headers = "From: " . $_POST['name'] . " <" .$_POST['email'] . ">\n" . "Return-Path: " . $_POST['email'] . "\n" . "Reply-To: " . $_POST['email'] . "\n";
mail($my_email,$subject,$message,$headers);
Does anyone see what I'm obviously missing? How can I get the NewClass array to pass each chosen value on in the email instead of printing out "array"?
foreach($_POST as $key => $value){
if(!(!isset($value))){$set=1;}
if(is_array($value)){
$message = $message . "$key: ".implode( ', ', $value)."\n\n";
} else {
$message = $message . "$key: $value\n\n";
}
}