Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 获取多个复选框的值(&;电子邮件回音_Php_Email_Checkbox - Fatal编程技术网

Php 获取多个复选框的值(&;电子邮件回音

Php 获取多个复选框的值(&;电子邮件回音,php,email,checkbox,Php,Email,Checkbox,在邮件正文中添加多个复选框值时遇到问题,因为我对PHP的了解程度较低 我知道可以使用foreach循环按数组显示/code>echo复选框,但我不知道如何在邮件正文中echo它。我想在$message中回显它 HTML代码示例- <input type="checkbox" name="color[]" value="Value1"> Title1 <input type="checkbox" name="color[]" value="Value2"> Title2

在邮件正文中添加多个复选框值时遇到问题,因为我对PHP的了解程度较低

我知道可以使用
foreach
循环按数组显示/code>echo复选框,但我不知道如何在邮件正文中
echo
它。我想在
$message
中回显它

HTML代码示例-

<input type="checkbox" name="color[]"  value="Value1"> Title1
<input type="checkbox" name="color[]"  value="Value2"> Title2
<input type="checkbox" name="color[]"  value="Value3"> Title3
<input type="checkbox" name="color[]"  value="Value4"> Title4
<input type="checkbox" name="color[]"  value="Value5"> Title5
标题1
标题2
标题3
标题4
标题5
PHP代码-

<?php

$to = "arifkpi@gmail.com";
$fromEmail = "arif@arif-khan.net";
$fromName = "Arif Khan";
$subject = "Contact Email";
$message = "Hey, Someone Sent you a Contact Message through your Website.

    Details Below-      
    Name: $_POST[fname] $_POST[lname]
    Email Address: $_POST[email]
    Contact Number: $_POST[contact1] $_POST[contact2] $_POST[contact3]
    Zip Code: $_POST[zip]
    Best Time To Contact: $_POST[besttime]
    Payment Plan Options: $_POST[payment_plan]
    MUA: $_POST[mua]
    Shoot Concept:
    Shoot Concept(Other): $_POST[shootother]";

$headers = "From:" . $fromName . " " . $fromEmail;

$flgchk = mail ("$to", "$subject", "$message", "$headers"); 
if($flgchk){
echo "A email has been sent to: $to";
}
else{
echo "Error in Email sending";
}
?>

您只需

$colors = isset($_POST['color']) ? implode(",",$_POST['color']) : '';
现在,您可以在电子邮件正文部分使用此
$colors
(您将获得所有选定的颜色,以逗号分隔)

$message = "Hey, Someone Sent you a Contact Message through your Website.

Details Below-      
Name: $_POST[fname] $_POST[lname]
Colors: $colors
Email Address: $_POST[email]
Contact Number: $_POST[contact1] $_POST[contact2] $_POST[contact3]
Zip Code: $_POST[zip]
Best Time To Contact: $_POST[besttime]
Payment Plan Options: $_POST[payment_plan]
MUA: $_POST[mua]
Shoot Concept:
Shoot Concept(Other): $_POST[shootother]";
试试这个

if(isset($_POST['color'])) {
    $message.= implode(',', $_POST['color']);
} 

如何使用$message实现它,我希望它位于邮件正文中。感谢我更新的答案,我在消息正文中添加了
$colors
。解析错误:语法错误,在第8行的/home/arifkpi/public\html/arif/project/cform/form\u action.php中出现意外的“=”,第8行-$color=isset($\u POST['color'])=内爆(,,,$\u POST['color']):“”;只需更新但出现新错误,警告:内爆():在第8行的/home/arifkpi/public\u html/arif/project/cform/form\u action.php中传递的参数无效。您可以在第22行发布
$\u post['color']
的输出吗?警告:内爆():在第22行的/home/arifkpi/public\u html/arif/project/cform/form\u action.php中传递的参数无效。您的代码在第22行