I试图使用wp_mail发送一个复选框值列表,我的代码的结果是发送电子邮件
但该值作为数组返回。我明白为什么,但我不知道如何分解数组,我不知道如何在这里实现一个预测。
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>发布于 2013-08-07 00:30:18
在调用wp_mail函数之前,需要处理$checks变量并将其转换为字符串,例如:
$checks = $_POST['personalization_result'];
$checkString = ''
foreach ($checks as $k=>$v) {
//some code to build up $checkString
}显然,您必须在您的$checkString调用中使用$checks而不是$checks。。。
或者,如果您不关心这些密钥,您可以这样做:
$sent = wp_mail($to, $subject, implode("|",$checks), $headers);然后你就会得到“0\1”之类的东西
https://stackoverflow.com/questions/18092707
复制相似问题