为了账号安全,请及时绑定邮箱和手机立即绑定

表单多选选项仅返回消息中的 1 个选项

表单多选选项仅返回消息中的 1 个选项

PHP
慕的地6264312 2023-12-15 16:00:31
这是我第一次制作表单,我有多项选择选项,但我认为我错过了一些东西,因为表单正在运行,但在选择多个选项时,我收到的电子邮件仅显示 1 个选项。<form action="send.php" method="POST"><p>Name</p> <input type="text" name="name"><p>Email</p> <input type="text" name="email"><p>Services</p><select data-placeholder="Responsible For...." multiple class="chosen-select full_width"  name="service" tabindex="-1"><option value="Medical">Medical</option><option value="Finance">Finance</option><option value="Construction">Construction</option><option value="IT Services">IT Services</option></select><p>Message</p><textarea name="message" rows="6" cols="25"></textarea><br /><input type="submit" value="Send"><input type="reset" value="Clear"></form>发送.php<?php$name = $_POST['name'];$email = $_POST['email'];$service = $_POST['service'];$message = $_POST['message'];$formcontent=" From: $name \n Type: $service \n Message: $message";$recipient = "itssonu4564@gmail.com";$subject = "Message";$mailheader = "From: $email \r\n";mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");echo "Thank You!";?>
查看完整描述

2 回答

?
喵喔喔

TA贡献1735条经验 获得超5个赞

您需要对 HTML 进行一些小的更改。在 name 属性中添加一对括号,以使 PHP 将其识别为数组。

<select multiple name="service[]">

之后在 PHP 中你可以使用

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

获取所有服务作为逗号分隔列表。


查看完整回答
反对 回复 2023-12-15
?
冉冉说

TA贡献1877条经验 获得超1个赞

select选项的名称应该是array[]类型

      name="service[]"


查看完整回答
反对 回复 2023-12-15
  • 2 回答
  • 0 关注
  • 143 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信