我正在为肉类储物柜公司创建一个订单,将表格发送到他们的电子邮箱。如果您选择一个项目,则无法选择其他项目;比如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
非常感谢:)
答案 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'并且'关闭'。如果没有设置显式值,则保留默认值。
你可以为此做两件事。
为表单元素设置显式值,如
<input type="radio" name="primeRib" value="Yes"> Prime Rib
这将在电子邮件中显示为“primeRib:是”。
<?php
foreach ($_POST as $key=>$value) {
if ($value=="off") {
continue;
}
else {
$email.="$key\n";
}
}
?>
这样的东西会跳过设置为“off”的每个$ _POST变量,对于不是的每个变量,它会将$ key(“name”属性中的数据)添加到$ email变量,或者您将数据添加到要发送的电子邮件中。你可以做很多事情,但至少这可以让你只过滤/检查的变量。