php eamil没有发送数据

时间:2015-07-23 14:58:05

标签: php html email

嘿,我发送电子邮件的时候遇到一个小问题我只会恢复你所看到的<br>以及<form>它没有发送任何东西。先感谢您 这是我的php

&#13;
&#13;
<?php
if (!isset($_POST['submit'])){
$companyname = $_POST['Company Name:'];
$companynumber = $_POST['Company Number:'];
$ypozition = $_POST['Your Pozition:'];
$f_name = $_POST['First Name:'];
$l_name = $_POST['Last Name:'];
$m_name  = $_POST['Middle Name:'];
$mail = $_POST['Email Address:'];
$phone = $_POST['Phone Number:'];
$postcode = $_POST['Post Code:'];
$snumber = $_POST['Street Number:'];
$sname = $_POST['Street Name:'];
$advert = $_POST['Advert From:'];
$comm = $_POST['Comments:'];

$to      = 'rlafrem@gmail.com';
$from	 = '$companyname';
$subject = '$f_name';

$message = "<br>$companyname<br><br>$companynumber<br><br>$ypozition<br><br>$f_name<br>".$m_name."<br><br>".$l_name."<br><br>".$mail."<br><br>"
.$phone."<br><br>".$postcode."<br><br>".$snumber." <br><br>".$sname."<br><br>".$advert."<br><br>".$comm."<br><br>";

mail($to, $subject, $message);
echo ("<p>An email have been sent</p>");
echo ("<p>Thank you</p>");
}else ("we appologise our email form its unaviable unknown error");
?>
&#13;
This its my html 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="">
    <meta name="author" content="">

    <title>I Need Work</title>
    <link href="css/bootstrap.min.css" rel="stylesheet">

</head>

<body>
    <!-- Page Content -->
    <div class="container">
        <!-- Jumbotron Header -->
        <header class="jumbotron hero-spacer">
            <h1>Register your company</h1>
            <p>Once you are done you will be contacted whitin 24h</p>
        </header>
        <hr>
        <!-- Title -->
        <!-- /.row -->
        <!-- Page Features -->
        <div class="row text-center">
<div class="row text-center">
<div class="caption">
<form name="CompanyRegister" method="post" action="mpost.php">
<table width="800" align="center"
<tr>
 <td valign="top">
  <label for="companyname">Company Name</label></td>
 <td valign="top">
<input  type="text" name="companyname" maxlength="50" size="30" />
 </td>
</tr>
<tr>
 <td width="197" valign="top">
<label for="companynumber">Company Number</label>
 </td>
 <td width="591" valign="top">
<input  type="text" name="companynumber" maxlength="50" size="30">
 </td>
</tr>
<tr>
 <td width="197" valign="top">
<label for="ypozition">Your Pozition</label>
 </td>
 <td width="591" valign="top">
<input  type="text" name="ypozition" maxlength="50" size="30">
 </td>
</tr>
<tr>
 <td width="197" valign="top">
<label for="f_name">First name</label>
 </td>
 <td width="591" valign="top">
<input  type="text" name="f_name" maxlength="50" size="30">
 </td>
</tr>
<tr>
<tr>
<tr>
 <td valign="top">
<label for="m_name">Middle name</label>
 </td>
 <td valign="top">
<input  type="text" name="m_name" maxlength="50" size="30">
 </td>
</tr>
<tr>
 <td valign="top">
<label for="l_name">Last name</label>
 </td>
 <td valign="top">
<input  type="text" name="l_name" maxlength="50" size="30">
 </td>
</tr>
<tr>
 <td valign="top">
  <label for="mail">Email</label>
  </td>
 <td valign="top">
  <input  type="text" name="mail" maxlength="50" size="30">
 </td>
</tr>
<tr>
 <td valign="top">
  <label for="phone">phone</label>
  </td>
 <td valign="top">
  <input  type="text" name="phone" maxlength="50" size="30">
 </td>
</tr>
<tr>
 <td valign="top">
<label for="postcode">Post Code</label>
</td>
 <td valign="top">
<input  type="text" name="postcode" maxlength="50" size="30">
 </td>
</tr>
<tr>
 <td valign="top">
<label for="snumber">Number</label>
</td>
 <td valign="top">
<input  type="text" name="snumber" maxlength="50" size="30">
 </td>
</tr>
 <tr>
 <td valign="top">
  <label for="sname">Street name</label></td>
 <td valign="top">
  <input  type="text" name="sname" maxlength="50" size="30">
 </td>
</tr>
  <tr>
                
      </tr>
      
 <td valign="top">
 
  <label for="advert">How did you find us ?</label>
  </td>
  <td valign="top">
<select name="advert">

<option value="none">none</option>
<option value="adgoogle">google</option>
<option value="ademail">mail from us</option>
<option value="adfriend">from a friend</option>
<option value="adpaper">paper advert</option>
</select>
</td>
<tr>
</tr>
 

 <td valign="top">
 
  <label for="comm">Comments</label>
 
 </td>
 
 <td valign="top">
 
  <textarea  name="comm" cols="50" rows="8">Anything you wood like to know or say ?</textarea>
 
 </td>
 
</tr>

<tr>
<td valign="top">
 
  <label for="submit"></label>
 
 </td>

<td valign="top">
 
  <input type="submit" name="submit"  value="Become a member" maxlength="30" size="30">
 
 </td>
 
</tr>
</table>
</form>
         </div>
         </div>

        </div>
        <!-- /.row -->


        <hr>

        <!-- Footer -->
        <footer>
            <div class="row">
                <div class="col-lg-12">
                    <p>Copyright &copy; Your Website 2015</p>
                </div>
            </div>
            <a href="login.php" class="btn btn-primary">Members area </a>
            <p></p>
            <a href="newmembers.html" class="btn btn-primary">Become a member </a>
            <p></p>
            <a href="aviable.html" class="btn btn-primary">Agencys aviablile </a>
            <p></p>
            <a href="aboutus.html" class="btn btn-primary">About us</a>
        </footer>

    </div>
    <!-- /.container -->

    <!-- jQuery -->

</body>

</html>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:1)

作为 $ _ POST 中的标识符传递的字符串必须与HTML中的 name 属性完全匹配。

&#xA;&#xA;

例如:

&#xA;&#xA;

&lt; input type =“text”name =“companyname”maxlength =“50”size =“30”/&gt;

&#xA;&#xA;

可通过以下方式访问:

&#xA;&#xA;

$ _ POST ['companyname']

&#xA;&#xA;

此外,行 if(!isset($ _ POST ['submit'])); 没有做任何事,因为你没有在它后面的花括号 {} 中定义一个块。

&#xA;&#xA;

示例:

&#xA;&#xA;
  if(!isset($ _ POST ['submit'])){ &#XA; //做点什么&#xA;}否则{&#xA; //做其他事情&#xA;}&#xA;  
&#xA;

答案 1 :(得分:0)

编辑以下更多建议。

这一行:

if (!isset($_POST['submit'])){

只有在“提交”时才会发生。未在已发布的变量中设置。

您需要删除感叹号,以便所有内容都能按您期望的方式运行。

另请注意,语句的else部分内的代码不会在屏幕上显示它的编写方式。

你可以尝试:

echo "this is the error message you want to show on the screen";

die("this is the error message you want to show on the screen");

编辑: 此外,在设置$ message变量的地方,您会遇到几个错误。

$message = "<br>$companyname<br><br>$companynumber<br><br>$ypozition<br><br>$f_name<br>".$m_name."<br><br>".$l_name."<br><br>".$mail."<br><br>".$phone."<br><br>".$postcode."<br><br>".$snumber." <br><br>".$sname."<br><br>".$advert."<br><br>".$comm."<br><br>";

应该是:

$message = "<br>".$companyname."<br><br>."$companynumber."<br><br>".$ypozition."<br><br>".$f_name."<br>".$m_name."<br><br>".$l_name."<br><br>".$mail."<br><br>".$phone."<br><br>".$postcode."<br><br>".$snumber." <br><br>".$sname."<br><br>".$advert."<br><br>".$comm."<br><br>";