[英]Checkbox Value not showing in Email
因此,我創建了一個簡單的注冊表格。 除復選框外,其他所有功能均正常運行。 它們似乎沒有顯示在發送給收件人的電子郵件中。
這是HTML表單部分:
<input type="checkbox" class="radio" name="projectType[]" value="Logo/Identity System" required/>Logo/Identity System<br />
<input type="checkbox" class="radio" name="projectType[]" value="Poster" required/>Poster<br />
<input type="checkbox" class="radio" name="projectType[]" value="Brochure" required/>Brochure<br />
<input type="checkbox" class="radio" name="projectType[]" value="Ad Campaign" required/>Ad Campaign<br />
<input type="checkbox" class="radio" name="projectType[]" value="Website" required/>Website<br />
<input type="checkbox" class="radio" name="projectType[]" value="Other" required />Other<br />
這是PHP部分:
<?php
$to = 'bolanosjd@gmail.com';
$projectType = $_POST['projectType'];
$body = "Project Type:$projectType\n"
if ($_POST['submit']) {
if (mail ($to, $body)) {
echo '<p>You have successfully registered for 2014 Designathon!</p>';
} else {
echo '<p>Something went wrong, go back and try again!</p>';
}
}
?>
當按下提交按鈕時,將發送所有信息,但是“項目類型:”為空,沒有任何值。 如何獲取顯示所選復選框的值? 不要介意“ radio”類,它們以前是單選按鈕,可以很好地工作,但是客戶希望有多個選擇。
您嘗試通過電子郵件發送array
,但need a string
。 只需從更改代碼:
$body = "Project Type:$projectType\n"
至:
$types = implode(', ', $projectType);
$body = "Project Type:$types\n";
使用implode()
列出復選框值,如下所示:
<?php
if ($_POST['submit']) {
$to = 'bolanosjd@gmail.com';
$projectType = $_POST['projectType'];
$body = "Project Type: " . implode(", ", $projectType) ."\n";
if (mail ($to, $body)) {
echo '<p>You have successfully registered for 2014 Designathon!</p>';
} else {
echo '<p>Something went wrong, go back and try again!</p>';
}
}
?>
foreach($_POST['projectType'] as $value){
echo $value;
}
您已將項目類型設置為數組( []
)。 卸下方括號,它應該可以正常工作。 我以為會通過“數組”。
<input type="checkbox" class="radio" name="projectType" value="Logo/Identity System" required/>Logo/Identity System
或者,請參見keaner的示例,該示例遍歷所有潛在值(如果可以選擇多個值)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.