【发布时间】:2016-08-15 19:49:11
【问题描述】:
我有这个选项,我为我的 FormMail PHP 选择了所有选项:
<div class="form-checkbox">
<label for="modulo-1"><input type="checkbox" class="" name="Modulo" id="modulo-1" value="Simples Led" /> Simples Led</label>
</div>
<div class="form-checkbox">
<label for="modulo-2"><input type="checkbox" class="" name="Modulo" id="modulo-2" value="Simples Solar" /> Simples Solar</label>
</div>
<div class="form-checkbox">
<label for="modulo-3"><input type="checkbox" class="" name="Modulo" id="modulo-3" value="Simples Eólico" /> Simples Eólico</label>
</div>
但是,我的 PHP 存档并没有发送所有选中的选项。
这是我在 PHP 中的 formMail。它创建一个列表,但我可以在我的表单中发送所有选中的选项。
function parse_form($array) {
$reserved_keys[] = "MAX_FILE_SIZE";
$reserved_keys[] = "required";
$reserved_keys[] = "redirect";
$reserved_keys[] = "formlimpo";
$reserved_keys[] = "require";
$reserved_keys[] = "path_to_file";
$reserved_keys[] = "recipient";
$reserved_keys[] = "subject";
$reserved_keys[] = "bgcolor";
$reserved_keys[] = "text_color";
$reserved_keys[] = "link_color";
$reserved_keys[] = "vlink_color";
$reserved_keys[] = "alink_color";
$reserved_keys[] = "title";
$reserved_keys[] = "missing_fields_redirect";
$reserved_keys[] = "env_report"; $reserved_keys[] = "acao";
if (count($array)) {
while (list($key, $val) = each($array)) {
$reserved_violation = 0;
for ($ri=0; $ri<count($reserved_keys); $ri++) {
if ($key == $reserved_keys[$ri]) {
$reserved_violation = 1;
}
}
if ($reserved_violation != 1) {
if (is_array($val)) {
$contenttemp = "<b>$key:</b><br>";
for ($z=0;$zcount($val);$z++) {
$contenttemp .= "$val[$z]<br>";
}
$contenttemp .= "<br>\n";
$content .= $contenttemp;
} else {
if ($val) {
$content .= "<span style='font-family: arial; font-size: 14px;'><b>$key</b> $val</span><br><hr style='border-top: 1px solid #ccc;border-bottom: 1px solid #fff;'>\n";
}
}
}
}
}
return $content;
}
【问题讨论】:
-
您需要使用
name='Modulo[]'而不是name='Modulo'。[ ]告诉 PHP 你传递的是一个数组而不是单个值。 -
我试过把 name='Modulo[]'。而且,当我发送。出现这个错误信息:Fatal error: Function name must be a string in ...