<input type="checkbox" name="a[]" value="1">
<input type="checkbox" name="a[]" value="2">
<input type="checkbox" name="a[]" value="3">
我想评估一个[]的多个选项,以查看所选内容,这就是我必须使用数组的原因。
好的,现在的问题是:提交后我发布了那个数组。
if (isset($_POST['submit'])) {
$a = $_POST['a'];
}
此外,我想为所选的每个值将一些消息设置到另一个数组中:
if ($a === '1'){
$msg[] = "text1";
}
if ($a === '2'){
$msg[] = "text2";
} and so on...
现在我已将这些消息存储到数组$msg[]
下一步,这是我真正的问题:
我想在将要发送的邮件中显示整个选择。所以到那时我有:
$to = "a@b.cd";
$subject = "some text";
$message = "some text...
show what was selected:
$msg
end text";...
通常我知道我必须使用foreach:
<?php if(isset($msg)):?>
<?php foreach($msg as $m):?>
<p>
<?php echo $m;?>
</p>
<?php endforeach;?>
<?php endif;?>
使其可见。我的问题是将这个消息从邮件实现到该引号中。
所以,如果有人可以帮助我,我真的很感激。
非常感谢。
答案 0 :(得分:1)
只需使用字符串连接,在PHP中使用。(点)运算符完成。
$message = "some text... \n\nshow what was selected:\n\n";
foreach ($a as $b)
{
$message .= $b . "\n";
}
$message .= "end text";
此外,你应该研究你的变量命名($ a不是真正的描述),$ a是一个数组,所以你不能if ($a === '1')
,你应该使用in_array()
。< / p>
答案 1 :(得分:0)
你应该做
$msg = array();
foreach($a as $checked){
$msg[$a] = "text$a";
}
然后
<?php if(isset($msg)):?>
<?php foreach($msg as $k => $m):?>
<p>
<?php echo "$k : $m";>
</p>
<?php endforeach;?>
<?php endif;?>