Ладно, не совсем то, что я ожидал ... Я не знал, что мой код был настолько нечитаемым ... извините! Что я могу сделать, чтобы это исправить? Я действительно хотел бы просто выполнить (что я думал, было) простую математику, чтобы получить итоги. Я искал повсюду и читал так много информации о массивах, и, очевидно, я просто не понимаю концепцию ... любая помощь приветствуется и будет С благодарностью оценена!
Я создаю фиктивную форму заказа, в которой есть переключатели, флажки и используются массивы для отображения общей суммы покупки. У меня есть форма, которая работает, за исключением того, что я не могу получить общую сумму из двух разных массивов, которые у меня есть. $ total = $ extras + $ extra не работает и, честно говоря, я должен был знать, что это не так просто! ... Любые предложения о том, какую формулу использовать, чтобы я мог получить общую сумму в долларах всех выбранных опций? Кроме того, кто-нибудь может мне помочь, чтобы элементы флажка были перечислены в новой строке, а не в новой таблице?
Заранее спасибо!
Еще пара вещей: я должен держать это в редуксе и хотел бы сохранить вывод в таблице таким, какой он есть ... кроме этого, не стесняйтесь менять то, что вы хотите / нуждаетесь.
Я новичок в массивах PHP и, похоже, испытываю трудности только в том, что касается их значений, но, поскольку я знаю, насколько важны массивы в PHP, я бы хотел посмотреть, как они работают!
<?php
/*This stuff is only here because I want to make sure
there are 2 decimal places in the final numbers since
I'm dealing in "money" values*/
$total = number_format ($total,2);
$value = number_format ($value,2);
$additional = number_format ($additional,2);
$value = array("Short Trip"=>15.99, "Long Trip"=>28.99, "Overnight"=>10.99 "Forever"=>99.99);
if(isset($_POST['travel'])) {
$extras = array("Hair Brush"=>1.50, "Shampoo"=>1.50, "Toothpaste"=>1.50,
"Cream Rinse"=>1.50, "Tooth Brush"=>1.50,
"Shower Cap"=>1.50, "Washcloth"=>1.50, "Mouthwash"=>1.50);
if (isset($_POST['extras'])) {
foreach ($_POST['extras'] as $additional) {
echo "<table border =\"2\">
<tr><td>Item</td><td>Charges</td></tr>
<tr><td>".$_POST['travel']."</td>
<td> $".$value[$_POST['travel']]."</td></tr>
<tr>
<td>".$additional."</td>
<td> $".$extras[$additional]."</td>
</tr>
<tr><td>Your total</td> <td>".$total."</td></tr>
</table>";
}
}
}
?>
<html>
<body>
<form action="" method="post">
<table border="2">
<tr>
<td colspan="2" align="center" scope="col">Stay Information</td>
</tr>
<tr>
<td><input type="radio" name="travel" value="Short Trip" />Short trip $15.99</td>
<td><input type="radio" name="travel" value="Long Trip" />Long trip $28.99</td>
</tr>
<tr>
<td><input type="radio" name="travel" value="Overnight" />Overnight $10.99</td>
<td><input type="radio" name="travel" value="Forever" />Forever $99.99</td>
</tr>
</table>
<table border="2">
<tr>
<td colspan="2" scope="col">What will you need?($1.50 each)</td>
</tr>
<tr>
<td><input type="checkbox" name="extras[]" value="Hair Brush" />Hair Brush</td>
<td><input type="checkbox" name="extras[]" value="Shampoo" />Shampoo</td></tr>
<tr>
<tr><td><input type="checkbox" name="extras[]" value="Toothpaste" />Toothpaste</td>
<td><input type="checkbox" name="extras[]" value="Cream Rinse" />Cream Rinse</td></tr>
</tr>
<tr>
<td><input type="checkbox" name="extras[]" value="Tooth Brush" />Tooth Brush</td>
<td><input type="checkbox" name="extras[]" value="Shower Cap" />Shower Cap</td></tr>
<tr>
<tr><td><input type="checkbox" name="extras[]" value="Washcloth" />Washcloth</td>
<td><input type="checkbox" name="extras[]" value="Mouthwash" />Mouthwash</td></tr>
</tr>
<tr><td colspan="2">
<input type="submit" value="Submit"></td></tr>
</table>
</form>
</body>
</html>