Php 使用method=";获取电子邮件上的复选框值;邮政「;

Php 使用method=";获取电子邮件上的复选框值;邮政「;,php,jquery,html,checkbox,Php,Jquery,Html,Checkbox,我有一个带有下拉列表、复选框和无线电选项的联系表单,但我无法将复选框发送到我的电子邮件 我试过这个: <label class="labelleft">¿Cómo se enteró de nosotros?</label> <label class="labelright"><input type="checkbox" name="findout[]" value="Email" />Email</label>

我有一个带有下拉列表、复选框和无线电选项的联系表单,但我无法将复选框发送到我的电子邮件 我试过这个:

<label class="labelleft">¿Cómo se enteró de nosotros?</label>
        <label class="labelright"><input type="checkbox" name="findout[]" value="Email" />Email</label>
        <label class="labelright"><input type="checkbox" name="findout[]" value="Buscador"/>Buscador</label>
        <label class="labelright"><input type="checkbox" name="findout[]" value="Revista"/>Revista</label>
        <label class="labelright"><input type="checkbox" name="findout[]" value="Expo"/>Expo</label>
        <label class="labelright"><input type="checkbox" name="findout[]" value="Redes Sociales"/>Redes Sociales</label>
?
电子邮件
布斯卡多
复习
博览会
社会红
我在用这个:

<form id="form1" name="form1" method="post" action="enviar.php">

php是:

<?php 
$mail='mail@mail.com'; 

$name = $_POST['name']; 
$email= $_POST['email'];
$phone = $_POST['phone'];
$giro = $_POST['giro'];
$negocio = $_POST['negocio'];
$dist = $_POST['dist'];
$findout = $_POST['findout'];
$rb= $_POST ['rbtn'];
$message = $_POST['message']; 
$thank="gracias.html"; 
$message = " 
Nombre: " .$name." 
Correo Electronico: " .$email." 
Telefono: " .$phone." 
Compania: " .$giro." $rb
Tipo de Negocio: ".$negocio."
Distribuidor: ".$dist."
Se entero: ".$findout."
Mensaje: " .$message."
"; 

if (mail($mail,"NIBO",$message)) 
Header ("Location: $thank"); 

?>

我刚刚发布了复选框的html部分。 当我发送电子邮件时,我得到的只是“数组”这个词

不是100%确定我做错了什么。
提前感谢您的帮助或提示

在PHP中使用
foo[]
命名hack会导致
foo
成为$\u POST中的数组。因为您只是直接将该数组复制到变量:

$foo = $_POST['foo'];
然后把这个变量嵌入到你的电子邮件中,你就会

Se entero: Array
在你的电子邮件里。您必须执行以下操作:

$foo = implode(',', $_POST['foo']);
将数组转换为普通字符串

$findout = $_POST['findout'];
是一个单数值数组,需要循环遍历它们才能得到每个值

$findout = "";
foreach($_POST['findout'] as $findout){
   $findout .= "{$findout} ";
}
$findout = rtrim($findout);

然后根据您希望字符串的外观设置字符串的格式

您可以在复选框中使用
foreach
。例如:
foreach($\u POST['findout']作为$check){echo$check;}
$findout
是一个检查值数组。你需要使用类似于
内爆(“,”,$findout)
的方法来获取可以在电子邮件中使用的字符串。Mark B对我使用了不同的方法,他的方法更适合这种情况。Marc B的解决方案非常有效!非常感谢你!