PHP的形式在多个复选框选项(Multiple checkbox options on a PHP

2019-10-17 07:28发布

已经建立了PHP以功能性形式,但是我有5个选项(超过1可被选择)一个复选框但是只有1选项表示在电子邮件的。

HTML:

<label class="radio"><input type="checkbox" name="service" value="Web Design" />Web Design</label>
<label class="radio"><input type="checkbox" name="service" value="Graphic Design" />Graphic Design</label>
<label class="radio"><input type="checkbox" name="service" value="Brand Identity" />Brand Identity</label>
<label class="radio"><input type="checkbox" name="service" value="Online Marketing" />Online Marketing</label>
<label class="radio"><input type="checkbox" name="service" value="Other" />Other</label>

PHP:($服务)

<?php
$name = $_POST['name'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$website = $_POST['website'];
$service = $_POST['service'];
$description = $_POST['description'];
$inspiration = $_POST['inspiration'];
$budget = $_POST['budget'];
$deadline = $_POST['deadline'];
$formcontent=" From: $name \n Email: $email \n Phone: $phone \n Website: $website \n\n service: $service \n budget: $budget \n deadline: $deadline \n\n description: $description \n\n inspiration: $inspiration ";
$recipient = "myemail@gmail.com";
$subject = "Contact form";
$mailheader = "From: $email \r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
echo "Thank You, your information has been received.";
?>

Answer 1:

如果你有多个同名的元素,那么你将只能除非你使用数组语法来读取其中的一个[]name=service[]那么你将获得$ _ POST [“服务”]为包含所有的数组你的服务。 您可以使用破灭将其转换为一个字符串。

$service = implode(' ', $_POST['service']);


Answer 2:

在名称,在这里你将它命名为服务写在那里,服务[]数组使用。 然后使用在PHP部分使用该多=“多个” tag.and:

<?php
$services=implode(',',mysql_real_escape_string($_post['service']));
print_r($services);
?>

编码快乐!



Answer 3:

用户数组名,而不是像这样复选框简单的名字:

<label class="radio"><input type="checkbox" name="service[]" value="Web Design" />Web Design</label>
<label class="radio"><input type="checkbox" name="service[]" value="Graphic Design" />Graphic Design</label>
<label class="radio"><input type="checkbox" name="service[]" value="Brand Identity" />Brand Identity</label>
<label class="radio"><input type="checkbox" name="service[]" value="Online Marketing" />Online Marketing</label>
<label class="radio"><input type="checkbox" name="service[]" value="Other" />Other</label>

print_r($_POST['service']);
// output
Array
(
    [0] => Web Design
    [1] => Graphic Design
    [2] => Brand Identity
    [3] => Online Marketing
    [4] => Other
)


Answer 4:

name="service[]"代替(阵列) name="service"在你的形式得到的多重选择的值作为数组。 虽然检索,你可以使用获得价值implode功能如下

$services = implode(",", $_POST['service']);


文章来源: Multiple checkbox options on a PHP form
标签: php html css forms