用邮件中的数组发布我的名字

时间:2017-09-01 06:38:12

标签: php mysql

这是我遇到mail功能问题的第一个项目。我想在邮件中发送option标记值。那时我没有得到option标签,但是我在数组中取名select标签,因为我想在数据库中存储多个值,这就是我使用的原因数组。谁能告诉我这个问题的解决方案?

这是我的代码:

<select multiple id="00N7F000001F2kO" name="soft_skill[]">
  <option value=""selected disabled>soft Skills</option>
  <option name="Personality Development" value="Personality Development">personality development</option>
  <option name="Communication Skills" value="Communication Skills">communication skills</option>
</select>

我的mail函数代码是:

if(isset($_POST['submit']))
{
    $name = $_POST['name'];
    $soft_skill = $_POST['soft_skill'];
    $question = $_POST['question'];
    $about_us = $_POST['about_us'];
    $to = "kuljeet@mightymente.com";
    $subject = "Web Enquiry";
    $message = "................";
    $header = "From:$email"."\r\n"."CC: kuljeetdhiman06@gmail.com";             
    if(mail($to, $subject, $message, $header))
    {
      echo "";
    } else {
      echo "";
    }
}

2 个答案:

答案 0 :(得分:1)

您可以使用

$temp_softSkill=implode(",",$_POST['soft_skill']);

因为它是一个数组,所以你必须使用像$_POST['soft_skill'][0]这样的软技能数组的索引

答案 1 :(得分:1)

您无法直接在邮件中传递数组, 要么您应该使用implode方法并指定您想要使用的任何分隔符。如果您选择多个选项,则使用implode将获得Personality Development , Communication Skills

之类的结果
if(isset($_POST['submit']))
{
    $name=$_POST['name'];
    $soft_skill= implode("," , $_POST['soft_skill']);
    $question=$_POST['question'];
    $about_us=$_POST['about_us'];
    $to="kuljeet@mightymente.com";
    $subject="Web Enquiry";
    $message="................";
    $header="From:$email"."\r\n"."CC: kuljeetdhiman06@gmail.com";             
    if(mail($to, $subject, $message, $header)) {
        echo "";
    } else{
        echo "";
    } 
}

我看到你的消息变量就像

$message="................";

在这里,您需要使用.=类似,

来连接所有值
$message = "Name : ".$name."\n\n";
$message.= "Soft Skils : ".$soft_skill."\n\n";
$message.= "Question : ".$question."\n\n";
$message.= "About Us : ".$about_us."\n\n";

希望这会对你有所帮助。