在复选框中存储多个值以使用php进行检查
我有一个学校作业,在mc和bk之间做一个比较网站 现在我有这个:在复选框中存储多个值以使用php进行检查,php,html,css,checkbox,Php,Html,Css,Checkbox,我有一个学校作业,在mc和bk之间做一个比较网站 现在我有这个: <html> <head> <link rel="stylesheet" type="text/css" href="style1.css" /> </head> <?php if(isset($_POST['formSubmit'])) { $breakfastMC = $_POST['Brea
<html>
<head>
<link rel="stylesheet" type="text/css" href="style1.css" />
</head>
<?php
if(isset($_POST['formSubmit']))
{
$breakfastMC = $_POST['BreakfastMC'];
$breakfastBK = $_POST['BreakfastBK'];
$sumMC = 0;
$sumBK = 0;
if(empty($breakfastMC))
{
echo("<p>You didn't select any food in MC.</p>\n");
}
else
{
$MC = count($breakfastMC);
echo("<p>You selected for MC = $MC:<br/>");
for($i=0; $i < $MC; $i++)
{
echo( "Price = " . $breakfastMC[$i] . "<br/>");
$sumMC += floatval( $breakfastMC[$i] );
}
echo "Total MC = " . $sumMC . "<br/>";
}
if(empty($breakfastBK))
{
echo("<p>You didn't select any food in BK.</p>\n");
}
else
{
$BK = count($breakfastBK);
echo("<p>You selected for BK = $BK:<br/>");
for($i=0; $i < $BK; $i++)
{
echo( "Price = " . $breakfastBK[$i] . "<br/>");
$sumBK += floatval( $breakfastBK[$i] );
}
echo "Total BK = " . $sumBK . "<br/>";
}
//$sumBK = array_sum($BK)
//$sumMC = array_sum($MC)
if ( $sumBK == $sumMC )
echo 'equal';
else if ( $sumBK > $sumMC )
echo 'BK more expensive than MC';
else echo 'MC more expensive than BK';
function IsChecked($chkname,$value)
{
if(!empty($_POST[$chkname]))
{
foreach($_POST[$chkname] as $chkval)
{
if($chkval == $value)
{
return true;
}
}
}
return false;
}
}
?>
<form action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="post">
<div class="MC">
<h2><b>Mc Donalds</b></h2>
<br />
<b>Ontbijt:</b>
<br />
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne1" value="2"/>
<label for="squaredOne1"></label>
<div class="McText">Croissant jam en boter Prijs = 2 Cal = 100</div>
</div>
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne2" value="3"/>
<label for="squaredOne2"></label>
<div class="McText">Pancakes met stroop <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne3" value="3"/>
<label for="squaredOne3"></label>
<div class="McText">McMuffin met Bacon en Ei <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne4" value="4"/>
<label for="squaredOne4"></label>
<div class="McText">McMuffin met Kaas <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne5" value="2"/>
<label for="squaredOne5"></label>
<div class="McText">2x Versgemalen koffie <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne6" value="2"/>
<label for="squaredOne6"></label>
<div class="McText">2x Thee <br /></div>
</div>
<b>Lunch:</b>
<br />
<div class="squaredOne"><input type="checkbox" name="LunchMC[]" id="squaredOne7" value="2"/>
<label for="squaredOne7"></label>
<div class="McText">Hamburger <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="LunchMC[]" id="squaredOne8" value="3"/>
<label for="squaredOne8"></label>
<div class="McText">Cheeseburger <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="LunchMC[]" id="squaredOne9" value="4"/>
<label for="squaredOne9"></label>
<div class="McText">1955 met bacon <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="LunchMC[]" id="squaredOne10" value="3"/>
<label for="squaredOne10"></label>
<div class="McText">McKroket <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne11" value="2"/>
<label for="squaredOne11"></label>
<div class="McText">Coca Cola Middel (0,4L) <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne12" value="4"/>
<label for="squaredOne12"></label>
<div class="McText">Coca Cola Groot (0,5L) <br /></div>
</div>
<b>Avondeten:</b>
<br />
<div class="squaredOne"><input type="checkbox" name="DinerMC[]" id="squaredOne13" value="4"/>
<label for="squaredOne13"></label>
<div class="McText">Big Mac <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="DinerMC[]" id="squaredOne14" value="3"/>
<label for="squaredOne14"></label>
<div class="McText">Chicken Sensation <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="DinerMC[]" id="squaredOne15" value="5"/>
<label for="squaredOne15"></label>
<div class="McText">Chili Chicken <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="DinerMC[]" id="squaredOne16" value="4"/>
<label for="squaredOne16"></label>
<div class="McText">Big Tasty met bacon <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne17" value="5"/>
<label for="squaredOne17"></label>
<div class="McText">Coca Cola Mega (0,7L) <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne18" value="4"/>
<label for="squaredOne18"></label>
<div class="McText">Coca Cola Groot (0,5L) <br /></div>
</div>
<br />
</div>
<div class="BK">
<h2><b>Burger King </b></h2>
<b>Ontbijt:</b>
<br />
<input type="checkbox" name="BreakfastBK[]" value="1.50"> Mini Pancakes (9stuks) €1,50 364kcal<br />
<input type="checkbox" name="BreakfastBK[]" value="1.50"> Toastie €1,50 359 kcal<br />
<input type="checkbox" name="BreakfastBK[]" value="3.00"> Breakfast Burger €3,00 825 kcal <br />
<input type="checkbox" name="BreakfastBK[]" value="2.75"> Breakfast Wrap €2,75 441 kcal<br /> <br />
<input type="checkbox" name="BreakfastBK[]" value="3.80"> 2xKoffie €3,80 0 kcal<br />
<input type="checkbox" name="BreakfastBK[]" value="2.25"> 1 flesje Chaudfontaine (500 ml) €2,25 0 kcal<br />
<b>Lunch:</b>
<br />
<input type="checkbox" name="LunchBK[]" value="4.55"> Grilled Chicken Wrap €4,55 344 kcal<br />
<input type="checkbox" name="LunchBK[]" value="1.95"> Cheeseburger €1,95 338 kcal<br />
<input type="checkbox" name="LunchBK[]" value="5.75"> Tripple Whopper €5,75 1114 kcal<br />
<input type="checkbox" name="LunchBK[]" value="4.75"> Big King XXL €4,75 1022 kcal<br /> <br />
<input type="checkbox" name="BreakfastBK[]" value="2.00"> Coca Cola M (400 ml) €2,00 168 kcal<br />
<input type="checkbox" name="BreakfastBK[]" value="2.50"> Coca Cola XXL (750 ml) €2,50 315 kcal<br />
<b>Avondeten:</b>
<br />
<input type="checkbox" name="DinerBK[]" value="4.75"> Double Cheeseburger XXL €4,75 502 kcal <br />
<input type="checkbox" name="DinerBK[]" value="5.25"> Grilled Chicken BBQ €5,25 707 kcal<br />
<input type="checkbox" name="DinerBK[]" value="3.25"> Whopper Jr. €3,25 362 kcal <br />
<input type="checkbox" name="DinerBK[]" value="3.75"> Big King €3,75 552 kcal <br /> <br />
<input type="checkbox" name="BreakfastBK[]" value="2.25"> Coca Cola M (400 ml) €2,25 210 kcal <br />
<input type="checkbox" name="BreakfastBK[]" value="2.50"> Coca Cola XXL (750 ml) €2,50 315 kcal<br />
</div>
<div class="Button">
<input type="submit" name="formSubmit" value="submit">
</div>
</form>
</body>
</html>
不要把价格放在价值里,只要在那里放一个产品的标识符,例如
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne1" value="croissant"/>
<label for="squaredOne1"></label>
<div class="McText">Croissant jam en boter Prijs = 2 Cal = 100</div>
</div>
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne2" value="pancakes"/>
<label for="squaredOne2"></label>
<div class="McText">Pancakes met stroop <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne3" value="mcmuffinbacon"/>
<label for="squaredOne3"></label>
<div class="McText">McMuffin met Bacon en Ei <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne4" value="mcmuffinkaas"/>
<label for="squaredOne4"></label>
<div class="McText">McMuffin met Kaas <br /></div>
</div>
然后,在计算价格时,您可以执行以下操作:
foreach($breakfastMC AS $bk)
{
echo( "Price = " . $MCmenu[$bk]['price'] . "<br/>");
echo( "Calories = " . $MCmenu[$bk]['calories'] . "<br/>");
$sumMC += $MCmenu[$bk]['price'];
$caloriesMC += $MCmenu[$bk]['calories'];
}
然后,您可以根据以下内容生成HTML:
foreach ($MCmenu as $id => $item) {
$price = $item['price'];
$cal = $item['calories'];
$desc = $item['desc'];
?>
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="BreakfastMC<?php echo $id ?>" value="<?php echo $id ?>"/>
<label for="BreakfastMC<?php echo $id ?>"></label>
<div class="McText"><?php echo $desc ?> = <?php echo $price ?> Cal = <?php echo $cal ?></div>
</div>
<?php }
foreach($mcmenus as$id=>$item){
$price=$item['price'];
$cal=$item['carries'];
$desc=$item['desc'];
?>
不要把价格放在价值里,只要在那里放一个产品的标识符,例如
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne1" value="croissant"/>
<label for="squaredOne1"></label>
<div class="McText">Croissant jam en boter Prijs = 2 Cal = 100</div>
</div>
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne2" value="pancakes"/>
<label for="squaredOne2"></label>
<div class="McText">Pancakes met stroop <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne3" value="mcmuffinbacon"/>
<label for="squaredOne3"></label>
<div class="McText">McMuffin met Bacon en Ei <br /></div>
</div>
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="squaredOne4" value="mcmuffinkaas"/>
<label for="squaredOne4"></label>
<div class="McText">McMuffin met Kaas <br /></div>
</div>
然后,在计算价格时,您可以执行以下操作:
foreach($breakfastMC AS $bk)
{
echo( "Price = " . $MCmenu[$bk]['price'] . "<br/>");
echo( "Calories = " . $MCmenu[$bk]['calories'] . "<br/>");
$sumMC += $MCmenu[$bk]['price'];
$caloriesMC += $MCmenu[$bk]['calories'];
}
然后,您可以根据以下内容生成HTML:
foreach ($MCmenu as $id => $item) {
$price = $item['price'];
$cal = $item['calories'];
$desc = $item['desc'];
?>
<div class="squaredOne"><input type="checkbox" name="BreakfastMC[]" id="BreakfastMC<?php echo $id ?>" value="<?php echo $id ?>"/>
<label for="BreakfastMC<?php echo $id ?>"></label>
<div class="McText"><?php echo $desc ?> = <?php echo $price ?> Cal = <?php echo $cal ?></div>
</div>
<?php }
foreach($mcmenus as$id=>$item){
$price=$item['price'];
$cal=$item['carries'];
$desc=$item['desc'];
?>
所有这些都是什么?一个输入只能发送一个值。您可以将value=“10-20”
,然后PHP代码可以将其拆分。好的,我如何做到这一点而不弄乱我的所有代码:更好的方法是根本不将价格和卡路里放入值中。只需为每个产品添加一个标识符,并使用PHP中的数组来查找价格和卡路里。您能详细说明吗?或者将我链接到becau的某个东西上se我真的不明白。这些都是什么?一个输入只能发送一个值。你可以把value=“10-20”
,然后PHP代码可以将其拆分。好的,我如何做到这一点而不弄乱我的所有代码:更好的方法是根本不将价格和卡路里放入值中。只需为每个产品添加一个标识符,并使用PHP中的数组来查找价格和卡路里。您能详细说明吗?或者将我链接到becau的某个东西上se我真的不明白。好的,谢谢你,但是我如何让MCmenu数组从复选框中读取值?MCmenu数组不会从复选框中获取值。你必须将所有值放入脚本中。你可以做的是将所有描述放入数组中。然后你可以从数组中生成所有HTML。这样你就不必e重复两个位置的价格和卡路里。o这很有用,我该怎么做?我已经把它添加到了答案中。好的,谢谢你,但是我该如何让mcmen数组从复选框中读取值?MCmenu数组不会从复选框中获取值。你必须在脚本中输入所有值。你可以做的是将所有的d数组中的描述。然后你可以从数组中生成所有HTML。这样你就不必在两个地方重复价格和卡路里了。:o那很有用,我该怎么做?我已经将它添加到了答案中。