存储数据库中的下拉列表名称和值

时间:2014-02-16 17:55:05

标签: php select

我试图在我的数据库中输入不仅是所选选项的值或数字,还包括选项本身的名称,就像在这种情况下Butter Salmon ...例如:如果我选择选项值1,我希望将值1插入到我的数据库中,并将产品名称Butter Salmon插入diff列。

<select type="text" id="buttersalmon_quantity" name="bsalmon" size="1" value="Butter Salmon" >
<option value="0" selected >quantity</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>    
<option value="4">4</option>
<option value="5">5</option>
</select>

<?php 
include('./config/connect.php');


if(@$_POST['yourname'] == "")
{
echo "Please enter your name";
} 
else{

$yourname = $_POST['yourname'];
$bsalmon = $_POST['bsalmon'];

mysql_query("INSERT INTO `ralphjoy`.`tbl_cart` (`yourname`, `prd`)VALUES('$yourname','$bsalmon') ") 
or die ("Query Error");

echo "<script>alert('YOUR ORDERS WERE SENT TO THE COUNTER. IT WILL BE SERVE IN A FEW
MINUTES. THANK YOU.')</script>";}   
?>

2 个答案:

答案 0 :(得分:0)

如果你处于绑定状态,你可以这样做。

<select type="text" id="buttersalmon_quantity" name="bsalmon" size="1" value="Butter Salmon" >
    <option value="0" selected >quantity</option>
    <option value="1||Buttered Salmon">1</option>

对所有数量继续上述操作,使用由不常出现在值中的异常字符分隔的数量和名称。这将是我们爆炸的分隔符,并且它必须不是通常出现在值中的字符串或字符。

然后,在PHP中,执行以下操作:

$bsalmon = explode('||', $_POST['bsalmon']);
$bsalmon_quant = $bsalmon[0];
$bsalmon_name = $bsalmon[1];

您现在可以在一列中插入数量($bsalmon_quant),并将名称($bsalmon_name [Butter Salmon])插入另一列。

从select标签中删除值,但在这种情况下它什么都不做。

答案 1 :(得分:0)

您必须使您的html值包含数字和名称以及某种分隔符,例如“|”或某事,例如<option value="1|buttersalmon_quantity">1</option>您需要将此添加到每个选项行。然后在你的分解器上的php爆炸中,你有两个值放入数据库。