我绝不是PHP专家。我几乎没有划伤表面,所以请原谅我的帖子。然而,经过多次搜索,我似乎找不到我的问题的答案。
基本上,我有一个包含许多问题的联系表(http://www.tabsfm.com/contact/quote/)。并非所有问题都需要答案。所以我遇到的问题是,当电子邮件通过时,会显示所有问题,包括没有答案的问题。
是否可以仅向电子邮件发送已收到答案的问题,而忽略任何空白回复?
可能有人可以帮助提供以下细分的示例,而不是发布整个联系表单:
HTML
Department/Organisation Size:
<select name="Size" class="hear">
<option value="000">Please Select</option>
<option value="1-5">1-5</option>
<option value="5-10">5-10</option>
<option value="10-20">10-20</option>
<option value="20-50">20-50</option>
<option value="50-100">50-100</option>
<option value="100+">100+</option>
</select>
PHP
$size = $_POST['Size']; and
$response = "$todayis [EST] \n
Company Size: $size \n
我希望你们能提供帮助。
答案 0 :(得分:2)
对于你(有点受限)的例子,你可以像这样接近它:
$size = $_POST['Size'];
$response = ""; // Whatever the beginning of your message needs to be
if($size != "000") // your value for not-selected
{
$response .= "Company Size: $size \n";
}
// repeat for other fields
使用数组可以实现其他字段的重复,foreach
比为表单中的每个字段创建if
块更容易(但它绝对 大小),但是不知道实际的代码我不能多说明。
使用复选框字段,我们需要检查是否设置了值,而不是实际值。对于你的例子,像这样:
if(isset($_POST['schedulling']))
{
$response .= "'schedulling' is checked \n";
}
如果您需要阅读该值,您可以通过引用$_POST['name_of_field']
完成相同的操作。经验法则是,与复选框相关的$_POST
字段仅在选中复选框时从true
返回isset
,否则返回false
。