php form to email only sending one variable

I am using this code for my form but it only sends one variable which in this case is “type”. What seems to be my mistake?

php

<?php
$name = $_POST['name'];
$email = $_POST['email'];
$subject = $_POST['subject'];
$type = $_POST['type'];
$message = $_POST['message'];
$formcontent=" From: $name /n subject: $subject /n email: $email /n  Type: $type /n Message: $message";
$recipient = "[email protected]";
$subject = "Contact Form";
$mailheader = "From: $email /r/n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
echo "We will call you as soon as possible!" . " -" . "<a href='contact.html' style='text-decoration:none;color:#ff0099;'> Return Home</a>";
?>

this is the corresponding html5 code

<form action="mail.php" method="post" role="form" class="contactForm">
    <div class="s-12 l-7"><input type="text" name="name" class="form-control" id="name" placeholder="Your Name" data-rule="minlen:4" data-msg="Please enter at least 4 chars" /></div>
    <div class="validation"></div>
    <div class="s-12 l-7"><input type="email" class="form-control" name="email" id="email" placeholder="Your Email" data-rule="email" data-msg="Please enter a valid email" /></div>
    <div class="validation"></div>
    <div class="s-12"><input type="text" class="form-control" name="subject" id="subject" placeholder="Subject" data-rule="minlen:4" data-msg="Please enter at cell number plus code" /></div>
    <div class="validation"></div>
    <div class="s-12 l-7"><p placeholder="Subject" data-rule="minlen:4">type
        <select name="type" size="1">
        <option value="update">Website Update</option>
        <option value="change">Information Change</option>
         <option value="addition">Information Addition</option>
             <option value="new">New Products</option>
         </select></p></div>
         <div class="validation"></div>
         <div class="s-12 l-7"><textarea class="form-control" name="message" id="message" rows="5" data-rule="required" data-msg="Please write something for us" placeholder="Message"></textarea><br/></div>
                <div class="validation"></div>
    <div class="s-12 m-6 l-4"><button type="submit" name="submit" value="submit" class="btn btn-primary btn-lg" required="required">Submit Message</button></div>
</form>

Try printing out all the post array by using this:

print_r($_POST);

I tried your html form and received all parameters properly.

There you go!

<?php

    if (isset($_POST['submit'])) {
        $name        = $_POST['name'];
        $email       = $_POST['email'];
        $subject     = $_POST['subject'];
        $type        = $_POST['type'];
        $message     = $_POST['message'];
        $formcontent = " From: $name /n subject: $subject /n email: $email /n  Type: $type /n Message: $message";
        $recipient   = "[email protected]";
        $subject     = "Contact Form";
        $mailheader  = "From: $email /r/n";

        if (!mail($recipient, $subject, $formcontent, $mail_header)) {
            echo "error";
        } else {

            echo "We will call you as soon as possible!" . " -" . "<a href='contact.html' style='text-decoration:none;color:#ff0099;'> Return Home</a>";
            print_r($_POST);

        }

    }

    ?>

Tested and works fine.
Example can be found here!

Try it out and let me know the results. Always happy to help!