繁体   English   中英

提交表单不显示变量

[英]Submitting Form Not Displaying Variables

当我提交表单时,会将一封电子邮件发送至我的电子邮件地址,并在表单中输入详细信息,但是当我收到该电子邮件时,数据为空白,这是我的代码

    <?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 = 'redacted@redacted.redacted';
$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 <contact-us-form@yellowgrid.co.uk>' . "\r\n";

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

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

?>

问题是当我提交表格时,我收到一封电子邮件,内容为

姓名(无)电话号码(无)

谁能告诉我我要去哪里错了

提前致谢

亚当

您必须为输入指定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">

快速浏览后,您应该交换您的$ body以阅读

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

试试看,看看是否可行

您在关闭标签..时有很多错误,并且不好的做法是使用echo ..显示整个html表单。请查看以下代码:

<?php

    extract($_POST);

    if ( isset($submit) )
    {
        $to = 'adam.albison@yellowgrid.co.uk';

        $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 <contact-us-form@yellowgrid.co.uk>' . "\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>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM