使用PHP post方法提交一组复选框值

时间:2013-08-07 00:26:02

标签: php

我尝试使用wp_mail通过电子邮件发送复选框值列表,我的代码IS的结​​果是发送电子邮件

但该值以数组形式返回..我理解为什么,但我不确定如何分解数组,我不知道如何在这里实现foreach。

PHP:

  //checkmarks post variable
       $checks = $_POST['personalization_result'];

  //php mailer variables
       $to = get_option('admin_email');
       $subject = "Someone sent a message from ".get_bloginfo('name');
       $headers = 'From: '. $email . "rn" .

         $sent = wp_mail($to, $subject, $checks, $headers);

HTML:

<form action="<?php the_permalink(); ?>" method="post">
<input type="hidden" name="submitted" value="1">

    <input type="submit">

<li class="option table selected">
    <div class="option-checkbox">
        <input type="hidden" value="0" name="personalization_result[memory_0]">
        <input type="checkbox" value="1" name="personalization_result[memory_0]" id="personalization_result_memory_0" checked="checked">
    </div>
    </div>
</li>

<li class="option table selected">
    <div class="option-checkbox">
        <input type="hidden" value="0" name="personalization_result[memory_1]">
        <input type="checkbox" value="1" name="personalization_result[memory_1]" id="personalization_result_memory_1" checked="checked">
    </div>
    </div>
</li>

</form>

1 个答案:

答案 0 :(得分:1)

在致电wp_mail函数之前,您需要处理$checks变量并将其转换为字符串,例如:

   $checks = $_POST['personalization_result'];
   $checkString = ''
   foreach ($checks as $k=>$v) {
       //some code to build up $checkString
   }

您显然必须在$checkString来电中使用$checks代替wp_mail。 。 。

或者,如果您不关心密钥,您可以执行以下操作:

     $sent = wp_mail($to, $subject, implode("|",$checks), $headers);

然后你会得到像“0 | 1”

这样的东西