if语句以php形式和表单输出

时间:2010-07-07 16:56:00

标签: php

我正在为肉类储物柜公司创建一个订单,将表格发送到他们的电子邮箱。如果您选择一个项目,则无法选择其他项目;比如T-bone和纽约地带,你可以拥有一个或另一个,但不能同时拥有两个。这是我的代码的样子。

<P>T-bone steak <input type="radio" name="T-bone and NY" id="T-bone steak" />
or New York Strip steak <input type="radio" name="T-bone and NY" id="New York Strip" /> </p>

这确实可以防止一个人选择这两个,但当他在他的电子邮件中查看时,他看到name =“T-bone and NY”,因此他不知道他们选择了哪一个。我以为它会显示id =“T-bone”或“NY Strip”。我确信使用if语句有更好的方法。

其次,当他们收到电子邮件时,它会显示人们选择的所有字段的名称,并在后续字词中显示。例如,如果某人选择了Prime肋骨,则电子邮件会说:

Prime Rib:on

有没有办法像用户看到的那样发送表单。也许在图像,word doc或访问数据库?我对任何事都持开放态度。

如果你想看到它的网址是www.spillvillelocker.com/beef.php

非常感谢:)

4 个答案:

答案 0 :(得分:1)

您的代码应如下所示:

<P>
T-bone steak <input type="radio" name="steak" value="T-bone steak" id="tbonesteak" />
or New York Strip steak <input type="radio" name="steak" value="New York Strip" id="nystrip" /> 
</p>

注意,我的“名字”对于两者都是相同的,具有不同的“值”。此外,“id”属性不应包含空格,因此我将它们更改为仅包含字母数字的内容。

答案 1 :(得分:0)

我认为你只需要提供一个VALUE =“”属性来显示每个单选按钮指定的值......还有NAME和ID应该相等。

<P>T-bone steak <input type="radio" name="MEAT1" id="MEAT1" value="TBONE"/> 
or New York Strip steak <input type="radio" name="MEAT1" id="MEAT1" value="NYSTRIP"/>     </p> 

答案 2 :(得分:0)

您需要设置这些输入的值属性。 顺便说一句,你不应该在名称属性中有空格。

答案 3 :(得分:0)

除了Mike发布的内容之外,关于您的第二个问题“为什么电子邮件显示'Prime Rib:on',再次是因为没有为该元素分配值属性。单选按钮的默认值为'on'并且'关闭'。如果没有设置显式值,则保留默认值。

你可以为此做两件事。

  1. 为表单元素设置显式值,如

    <input type="radio" name="primeRib" value="Yes"> Prime Rib

  2. 这将在电子邮件中显示为“primeRib:是”。

    1. 您可以做的第二件事是使用PHP来解析您的响应,只发送您想要的数据。有点像:
    2. <?php foreach ($_POST as $key=>$value) { if ($value=="off") { continue; } else { $email.="$key\n"; } } ?>

      这样的东西会跳过设置为“off”的每个$ _POST变量,对于不是的每个变量,它会将$ key(“name”属性中的数据)添加到$ email变量,或者您将数据添加到要发送的电子邮件中。你可以做很多事情,但至少这可以让你只过滤/检查的变量。