请教下如何给checkbox赋数值,现在只能显示选中复选框的字符串 将字符串发送数据库里,我想给每个checkbox再赋具体的价钱,最后显示出选的总价,传递到数据库里。问下哪位大侠会啊?(譬如面条=10元,饺子=20元,我选择面条和饺子复选框后,传递总数值30元到数据库表里。)
//dingdan.php
<form name="form1" method="post" action="result.php">
<table width="680" cellpadding="0" cellspacing="0">
<tr>
<td width="678" height="157" align="center" valign="top">
<p>您选择的订餐:
<input type="checkbox" name="food[]" value="宫爆鸡丁盖饭">
宫爆鸡丁盖饭
<input type="checkbox" name="food[]" value="面条" />
面条
<input type="checkbox" name="food[]" value="饺子" />
饺子 </p>
<p>
<input type="checkbox" name="food[]" value="KFC汉堡" />
KFC汉堡
<input type="checkbox" name="food[]" value="KFC鸡翅" />
KFC鸡翅
<input type="checkbox" name="food[]" value="麦当劳汉堡" />
麦当劳汉堡
<input type="checkbox" name="food[]" value="麦当劳鸡" />
麦当劳鸡翅 <br>
<input type="submit" name="submit" value="购买" />
<a href="check_add_food.php">查看
</a></p></td>
</tr>
</table>
</form>//result.php
<?php
if(($_POST[food]!=null)){
echo "您选的订餐是:";
for($i=0;$i<count($_POST[food]);$i++)
echo $_POST[food][$i]." ";
} $conn=mysql_connect("localhost","root","root")or die("数据库服务器链接错误".mysql_error());
mysql_select_db("restaurant",$conn)or die("数据库访问错误".mysql_error());
mysql_query("set names utf8");
session_start();
$user=$_SESSION["user"];
$food=$_POST['food'];
$datetime = date("Y-m-d H:i:s");
$sql=mysql_query("insert into form1(content)VALUES(".implode('".implode(",",$food)."')");
echo"<script>alert('公告信息添加成功!');history.back();</script>";?>
//dingdan.php
<form name="form1" method="post" action="result.php">
<table width="680" cellpadding="0" cellspacing="0">
<tr>
<td width="678" height="157" align="center" valign="top">
<p>您选择的订餐:
<input type="checkbox" name="food[]" value="宫爆鸡丁盖饭">
宫爆鸡丁盖饭
<input type="checkbox" name="food[]" value="面条" />
面条
<input type="checkbox" name="food[]" value="饺子" />
饺子 </p>
<p>
<input type="checkbox" name="food[]" value="KFC汉堡" />
KFC汉堡
<input type="checkbox" name="food[]" value="KFC鸡翅" />
KFC鸡翅
<input type="checkbox" name="food[]" value="麦当劳汉堡" />
麦当劳汉堡
<input type="checkbox" name="food[]" value="麦当劳鸡" />
麦当劳鸡翅 <br>
<input type="submit" name="submit" value="购买" />
<a href="check_add_food.php">查看
</a></p></td>
</tr>
</table>
</form>//result.php
<?php
if(($_POST[food]!=null)){
echo "您选的订餐是:";
for($i=0;$i<count($_POST[food]);$i++)
echo $_POST[food][$i]." ";
} $conn=mysql_connect("localhost","root","root")or die("数据库服务器链接错误".mysql_error());
mysql_select_db("restaurant",$conn)or die("数据库访问错误".mysql_error());
mysql_query("set names utf8");
session_start();
$user=$_SESSION["user"];
$food=$_POST['food'];
$datetime = date("Y-m-d H:i:s");
$sql=mysql_query("insert into form1(content)VALUES(".implode('".implode(",",$food)."')");
echo"<script>alert('公告信息添加成功!');history.back();</script>";?>
<input type="checkbox" name="food[]" value="10" />
面条
<input type="checkbox" name="food[]" value="20" />
饺子
这样你传进数据库的就是10和20 了
<input type="checkbox" name="food[]" value="面条" /> 面条
<input type="checkbox" name="food[]" value="饺子" /> 饺子 那下面你就需要进行判断.
if(food[$i]==面条)
{
$jiage1=10;
}
if(food[$i]==饺子)
{
$jiage2=20;
}
$1=10
$2=20$value=$1+$2;将$value存在库中
我设置$_POST[food][$i]的话 无法显示选择每组的值(不知道我写的对不),所以只能$_POST[food][0] 单选的话可以显示其中一个,多选不能计算总值,可有FOR循环什么方法么
$sum=0;
$jiage1=8;
$jiage2=10;
$jiage3=15;
if($_POST[food][0]=="宫爆鸡丁盖饭")
{
$sum+=$jiage1;
echo $jiage1;
}
if($_POST[food][0]=="面条")
{
$sum+=$jiage2;
echo $sum;
}
//这样只能单列出每个的价格
$count=count($_POST[food]);
$amount=0;
for ($i=0;$i<$count;$i++)
{
$amount+=$_POST[food][$i];
}
$sql="insert into food(amount) values('".$amount."')";
mysql_query($sql);
<?
$sum=0;
$jiage1=8;
$jiage2=10;
$jiage3=15;
$count=count($_POST[food]);
for ($i=0;$i <$count;$i++)
{ if($_POST[food][$i]=="宫爆鸡丁盖饭")
{
$sum+=$jiage1;
}
if($_POST[food][$i]=="面条")
{
$sum+=$jiage2;
}
if($_POST[food][$i]=="饺子")
{
$sum+=$jiage3;
}
$sum+=$_POST[food][$i];
echo "<br>";
echo $sum;
}
?>