2012-10-30 129 views
0

当我提交形式的电子邮件被发送到我的电子邮件地址与表单中输入的内容,但是当我收到的电子邮件中的数据是空白的,这里是我的代码提交表单显示不变量

<?php 
$form = '<form action="test2.php" method="POST"> 
<table width="300" style="border: 1px solid black;"> 
<tr> 
<td>Name   &nbsp; <td><input type="text" id="name"> 
<tr> 
<td>Phone Number &nbsp; <td><input type="text" id="telephone"> 
<tr> 
<td colspan="2"> 
<input type="submit" name="submit" value="submit"/></div> 
</tr> 
</table>'; 

echo $form; 
$to = '[email protected]'; 
$name = $_POST['name']; 
$telephone = $_POST['telephone']; 

$body = "<div>Name: $name <br>Telephone Number: $telephone<br></div>"; 


// subject 
$subject = 'Call Back Requested'; 


// message 
$message = $body; 


// To send HTML mail, the Content-type header must be set 
$headers = 'MIME-Version: 1.0' . "\r\n"; 
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 


// Additional headers 
$headers .= 'To:' . "\r\n"; 
$headers .= 'From: Call Back Request <[email protected]>' . "\r\n"; 

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

mail($to, $subject, $message, $headers); 
} 

?> 

问题当我提交表单我收到写着一封电子邮件

名称(没有) 电话号码(没有)

谁能告诉我在哪里,我错了

在此先感谢

亚当

回答

3

你必须指定你的输入name属性:

<input type="text" id="name" name="name"> 
<input type="text" id="telephone" name="telephone"> 

,而不是

<input type="text" id="name"> 
<input type="text" id="telephone"> 
+0

干杯我知道我错过了一些东西 – Adam

0

快速浏览一下之后就应该换你的$ body to read

$body = '<div>Name: ' . $name . '<br>Telephone Number: ' . $telephone . '<br></div>'; 

尝试了这一点,看看它是否工作

0

你有很多错误的关闭标签..和它的不好的做法使用echo来显示整个HTML形式..看看这个代码:

<?php 

    extract($_POST); 

    if (isset($submit)) 
    { 
     $to = '[email protected]'; 

     $body = "<div>Name: $name <br>Telephone Number: $telephone<br></div>"; 
     $subject = 'Call Back Requested'; 
     $message = $body; 

     $headers = 'MIME-Version: 1.0' . "\r\n"; 
     $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 
     $headers .= 'To:' . "\r\n"; 
     $headers .= 'From: Call Back Request <[email protected]>' . "\r\n"; 

     mail($to, $subject, $message, $headers); 
    } 

?> 

<html> 
    <form action="test2.php" method="POST"> 
     <table width="300" style="border: 1px solid black;"> 
      <tr> 
       <td>Name &nbsp; </td> 
       <td> <input type="text" id="name" name="name" /> </td> 
      </tr> 
      <tr> 
       <td>Phone Number &nbsp; </td> 
       <td> <input type="text" id="telephone" name="telephone" /> </td> 
      </tr> 
      <tr> 
       <td colspan="2"> <input type="submit" name="submit" value="submit"/> </td> 
      </tr> 
    </form> 
</html>