php - 使用 PHP 接收选择多个值
问题描述
我正在尝试在引导程序中使用 select multiple 接收多个选定的值。我也尝试使用数组,因为我在互联网上找到了几个与接收选择框的值相关的解决方案,但它仍然无法正常工作。它还发送仅写入的数组字,没有值。
html代码
<form action="send-mail.php" method="POST" class="contact_box">
<div class="panel-body">
<div class="form-group">
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-user blue"></i></span>
<input type="text" name="InputName" placeholder="Full Name*" class="form-control" required>
</div>
</div>
<div class="form-group">
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-envelope blue"></i></span>
<input type="email" name="InputEmail" placeholder="Email Address*" class="form-control" required>
</div>
</div>
<div class="form-group">
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-phone blue"></i></span>
<input type="number" name="InputCno" placeholder="Phone Number*" class="form-control" required>
</div>
</div>
<div class="form-group">
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-picture blue"></i></span>
<input type="text" class="form-control" placeholder="Services Required* (Hold Ctrl to Select More than One Service)" disabled>
<select multiple class="form-control" name="Services[]" placeholder="Services Required*" required size="3">
<option value="s1">1</option>
<option value="s2">2</option>
<option value="s3">3</option>
<option value="s4">4</option>
<option value="s5">5</option>
<option value="s6">6</option>
</select>
</div>
</div>
<div class="form-group">
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-comment blue"></i></span>
<textarea name="InputMessage" rows="6" placeholder="Message or Comment*" class="form-control" type="text" required></textarea>
</div>
</div>
<div class="">
<button type="submit" class="btn btn-default pull-right">Send <span class="glyphicon glyphicon-send"></span></button>
<button type="reset" value="Reset" name="reset" class="btn">Reset <span class="glyphicon glyphicon-refresh"></span></button>
</div>
</div>
</form>
PHP 代码
<?php
$InputName = $_POST['InputName'];
$InputEmail = $_POST['InputEmail'];
$InputCno = $_POST['InputCno'];
$Services = $_POST['Services'];
$InputMessage = $_POST['InputMessage'];
$formcontent=" From: $InputName \n Email Address: $InputEmail \n Contact Number: $InputCno \n Services Required: $Services \n Message: $InputMessage ";
$recipient = "test@example.com";
$subject = "Enquiry";
$mailheader = "From: $InputEmail \r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
header('Location: thank-you.html');
echo "Thank You!" . " -" . "<a href='index.html' style='text-decoration:none;color:#ff0099;'> Return Home</a>";
?>
请帮助接收选择框中的所有选定值。
感谢您的时间。
解决方案
您的问题是您想访问数组内容,而这不是通过 echo 完成的,
您可以使用 implode 函数将数组内容转换为字符串
$Services = implode(",",$_POST['Services']);
推荐阅读
- python - 为什么退出代码会给出 ValueError?
- django - Django在测试时没有创建测试数据库
- c - C - 读取文件并将文本放入具有动态内存分配的字符指针
- python - 在 Python 中带有返回值的 C# 回调
- java - Android : 如何跟踪键盘使用情况
- mongodb - 如何在 mongoDB 的两个不同集合中进行查询?(不使用 ORM)
- header - 如何在 Blazor 中订阅 onscroll 事件?
- delphi - Inno Setup 中的 WizardForm.TypesCombo.OnChange(WizardForm.TypesCombo) 是什么意思?
- java - 如何在Java中读取多个具有相同名称的列
- sql-server - SQL Server - 带有 WHERE 子句的 UNION 在简单连接时非常慢