0

当谈到 HTML 和 PHP 时,我是一个菜鸟。无论如何,我制作了一个 html 表单,然后我从网上获得了一个 PHP 邮件脚本并编辑了 PHP 代码,使其与我的 HTML 匹配。该表格实际上有效,它向我发送了电子邮件。问题是填写的表格中的一些内容在发送给我的电子邮件中是空的。在下面的代码中,您可以看到我拥有的表格是:

  • 姓名
  • 地址
  • 电话
  • 电子邮件
  • 住宅(3 个单选按钮,三个不同的选项)
  • 适用的文本字段

填写并提交整个表格后,当我收到电子邮件时,我得到的只是姓名和电话。

继承人的代码:

HTML

<!DOCTYPE HTML>
<html>
<head>
<title>SpaceCommand - Order Now</title>
<link rel="icon" type="image/png" href="http://cdn.directv.com/images/common/favicon.ico">
<link rel="stylesheet" type="text/css" href="ostyle.css" />
</head>

<body>

<div id="top"></div>
<div id="st"><img src="dimages/nflst.png" width="1021" height="550"/></div>
<div id="Every">Every Sunday. Every Game.</div>
<div id="tbox"></div>
<div id="tbox_2"></div>

<div id="Every_2">NFL SUNDAY TICKET included</div>
<div id="Every_3">at no extra charge!</div>
<div id="Every_4">Only on DIRECTV.</div>

<div id="logo"><img src="dimages/logof.png" width="400" height="51" /></div>



<div id="stylized" class="myform">
<form id="form1" action="mail.php" method="POST">

    <label>Name
        <span class="small">Add your name</span>
    </label>
    <input type="text" name="name">


    <label>Address
        <span class="small">Enter your address</span>
    </label>
    <input type="text" name="address">


    <label>Phone
        <span class="small">Add a Phone Number</span>
    </label>
    <input type="text" name="phone">


    <label>Email
        <span class="small">Enter your email</span>
    </label>
    <input type="text" name="email">
 <br />



<label>Residence:
</label>
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />

<div id="radio">
    House<input type="radio" value="house" name="house">
</div>

<div id="radio2">
    Condo<input type="radio" value="condo" name="condo">
</div>

<div id="radio3">
    Apartment<input type="radio" value="apartment" name="apartment">
</div>
<br />
<br/>
    <label>If apartment or condo, do you have roof availability or a balcony facing south?
        <span class="small"><i>*if applicable</i></span>
    </label>
    <br />
    <br />
    <input type="text" name="applicable">

<br />
<br />
<br />
<br />

    <button type="submit" value="Send" style="margin-top:15px;">Submit</button>
    <div class="spacer"></div>

</div>
</form>

<div id="ont">
<img src="dpimages/ont.png" />
</div>

</body>
</html>

PHP

<?php
//Cusomer Name
$name = $_POST['name'];
//Address
$address = $_POST['address'];
//Phone
$phone = $_POST['phone'];
//Email
$email = $_POST['email'];
//Residence
$residence = $_POST['residence'];
//Residence Type
$house = $_POST['house'];
$condo = $_POST['condo'];
$apartment = $_POST['apartment'];
//Applicable 
$applicable = $_POST['applicable'];

//Contetnt
$formcontent= "Customer Name: $name \n Address: $address \n Phone Number: $phone \n Email: $email \n Residence: $residence $house $condo $apartment \n Do they have roof access or a baclony facing south? (if applicable): $applicable";
$recipient = "gizmo@themvnt.com";
$subject = "DIRECTV Order - SpaceCommand";
$mailheader = "From: $email \r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
echo "Thank You for contacting us. We'll get back to you as soon as possible." . " -" . "<a href='order.html' style='text-decoration:none;color:#ff0099;'> Return to SpaceCommand</a>";
?>

如果你们可以为我修复代码,那将不胜感激。

编辑:var_dump($_POST)结果。

Array ( [name] => Test Name 
[Address] => Test Address 
[phone] => Tes Phome 
[Email] => Test Email 
[call] => House 
[Applicable] => 
Test ) Thank You for contacting us. We'll get back to you as soon as possible. - Return to SpaceCommand 
4

2 回答 2

0

您的单选按钮应该有三个相同的名称,除非您想让它们同时选择三个。

也试试这个

$formcontent= "Customer Name: {$name} \n Address: {$address} \n Phone Number: {$phone} \n Email: {$email} \n Residence: {$residence} $house {$condo} {$apartment} \n Do they have roof access or a baclony facing south? (if applicable): {$applicable}";

我测试了表格,所有的值都被正确传递了。

于 2012-08-30T00:35:10.483 回答
-1

$_POST 键中的大小写与您的代码中的不同。

即在帖子中它显示为电子邮件,但您以 $_POST['email'] 而不是 $_POST['Email'] 的形式访问它

但是,这与您在原始问题中发布的 html 代码不匹配。您确定问题中的 html 代码与您正在运行的代码相同吗?

[在评论中没有很好地打印的更新:]根据您打印的结果,您的 php 代码应该如下所示:

//Cusomer Name
$name = $_POST['name'];
//Address
$address = $_POST['Address'];
//Phone
$phone = $_POST['phone'];
//Email
$email = $_POST['Email'];
//Applicable 
$applicable = $_POST['Applicable'];
于 2012-08-30T01:00:20.330 回答