0

我绝不是 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

我希望你们能提供帮助。

4

1 回答 1

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否则返回。issetfalse

于 2013-08-27T11:59:38.483 回答