如何在php中发送完整表格的邮件?

时间:2016-02-09 09:30:56

标签: php html twitter-bootstrap

我在向我的服务器发送邮件时遇到问题。我不知道问题出在何处?一切都做得很完美,但它不起作用可能字段没有正确填写,警报信息也没有显示

if(isset($_POST['uname']) && isset($_POST['fname']) && isset($_POST['nic']) && isset($_POST['pecno'])&& isset($_POST['quality[25]'])&& isset($_POST['bday'])&& isset($_POST['quality[26]'])&& isset($_POST['postal'])&& isset($_POST['cell'])&& isset($_POST['houseno'])&& isset($_POST['mail'])&& isset($_POST['city'])&& isset($_POST['province'])&& isset($_POST['country']) )
{
    $_Name = $_POST['uname'];
    $_Fname = $_POST['fname'];
    $_NIC = $_POST['nic'];
    $_Pecno = $_POST['pecno'];
    $_Gender = $_POST['quality[25]'];
    $_Bday = $_POST['bday'];
    $_Qualification = $_POST['quality[26]'];
    $_Postal = $_POST['postal'];
    $_Cell = $_POST['cell'];
    $_Houseno = $_POST['houseno'];
    $_Email = $_POST['mail'];
    $_City = $_POST['city'];
    $_Province = $_POST['province'];
    $_Country = $_POST['country'];


    if(!empty($_Name) && !empty($_Fname) && !empty($_NIC) && !empty($_Pecno)&& !empty($_Gender)&& !empty($_Bday)&& !empty($_Qualification)&& !empty($_Postal)&& !empty($_Cell)&& !empty($_Houseno)&& !empty($_Email)&& !empty($_City)&& !empty($_Province)&& !empty($_Country))
    {
        $to = 'info@mymail.com';
        $subject = 'Join us mail';
        $body = 'Sender Name : '.$_Name."\n".'Sender Father Name : '.$_Fname."\n".'Sender NIC : '.$_NIC."\n".'Sender PEC Number : '.$_Pecno."\n".'Sender Gender : '.$_Gender."\n".'Sender Birthday : '.$_Bday."\n".'Sender Qualification : '.$_Qualification."\n".'Sender Postal Address : '.$_Postal."\n".'Sender Cell Number : '.$_Cell."\n".'Sender House Number : '.$_Houseno."\n".'Sender Email : '.$_Email."\n".'Sender City : '.$_City."\n".'Sender Province : '.$_Province."\n".'Sender Country : '.$_Country;
        $header = 'From : '.$_Email;

        if(@mail($to, $subject, $body, $header))
        {
             echo '<script language="javascript">';
    echo 'alert("message successfully sent")';
    echo '</script>';

        }else
        {
            echo 'Please Try again in a few mints !';
        }
    }


}

html代码

<form method="POST" action="index.php">

  <div class="row">
    <div class="col-sm-6 form-group">


     <input class="form-control" id="uname" name="uname" placeholder="Name" type="text" required> 

    </div>
    <div class="col-sm-6 form-group">
      <input class="form-control" id="fname" name="fname" placeholder="Father Name" type="text" required>
    </div>
  </div>
  <div class="row">
    <div class="col-sm-6 form-group">
      <input class="form-control" id="nic" name="nic" placeholder="CNIC/Passport Number" type="text" required>
    </div>
    <div class="col-sm-6 form-group">
      <input class="form-control" id="pecno" name="pecno" placeholder="PEC Number" type="text">
    </div>
  </div>
  <div class="row">
    <div class="col-sm-6 form-group">
      <input class="form-control" id="designation" name="designation" placeholder="Designation" type="text" required>
    </div>
    <div class="col-sm-6 form-group">
      <input class="form-control" id="organization" name="organization" placeholder="Organization" type="text">
    </div>
  </div>
  <div class="row">

    <div class="col-sm-6 form-group">
      Gender:  <div class="btn-group" data-toggle="buttons">

            <label class="btn btn-default">
                <input type="radio" id="quality[25]" name="quality[25]" value="1" /> Male
            </label> 
            <label class="btn btn-default">
                <input type="radio" id="quality[25]" name="quality[25]" value="2" /> Female
            </label> 
        </div>
        </div>
        <div class="col-sm-6 form-group">
      <input class="form-control" type="text" onfocus="(this.type='date')" id="bday" name="bday" placeholder="Date of Birth" ><br>
    </div>

    </div>
    <div class="row">
    <div class="col-sm-6 form-group">
      Qualification: <div class="btn-group" data-toggle="buttons">

            <label class="btn btn-default">
                <input type="radio" id="quality[26]" name="quality[26]" value="1" /> Bachelors In Engineering
            </label> 
            <label class="btn btn-default">
                <input type="radio" id="quality[26]" name="quality[26]" value="2" /> Masters
            </label> 
            <label class="btn btn-default">
                <input type="radio" id="quality[26]" name="quality[26]" value="3" /> PhD
            </label> 
        </div>
    </div>
    <div class="col-sm-6 form-group">
      <input class="form-control" id="postal" name="postal" placeholder="Postal Address" type="text" >
    </div>
    </div>
    <div class="row">
    <div class="col-sm-6 form-group">
      <input class="form-control slideanim" id="cell" name="cell" placeholder="Cell Number" type="tel" required>
    </div>
    <div class="col-sm-6 form-group">
      <input class="form-control" id="houseno" name="houseno" placeholder="House Number" type="tel" required>
    </div>
  </div>
  <div class="row">
    <div class="col-sm-6 form-group">
      <input class="form-control slideanim" id="mail" name="mail" placeholder="Email Address" type="email" required>
    </div>
    <div class="col-sm-6 form-group">
      <input class="form-control" id="city" name="city" placeholder="City" type="text" required>
    </div>
  </div>
  <div class="row">
    <div class="col-sm-6 form-group">
      <input class="form-control" id="province" name="province" placeholder="Province/State" type="text" required>
    </div>
    <div class="col-sm-6 form-group">
      <input class="form-control" id="country" name="country" placeholder="Country" type="text" required>
    </div>
  </div>
  </div>

  </div>
  <div class="container">
  <div class="row">
    <div class="col-sm-12 form-group">
      <button class="btn btn-default pull-right " type="submit">Send</button>
    </div>
  </div> 
</div>

2 个答案:

答案 0 :(得分:0)

用邮件替换@mail

if(@mail($to, $subject, $body, $header))

启用错误报告

error_reporting(E_ALL);

显示上一个错误:

print_r(error_get_last());

并检查php_error.log是否存在问题

phpinfo();

用于检查是否在php中启用了邮件模块。

如果全部通过,请检查/var/log/mail有关消息,这可能是网络,服务器,防火墙等1001问题......

希望它有所帮助。

答案 1 :(得分:0)

正如您所提到的,相同的代码在其他页面上完美运行所以请通过从邮件中删除“@”来检查它,因为添加它会隐藏所有通知,它也会显示错误。还尝试在邮件功能之前打印邮件正文。