Онлайн пазаруване: проблем при част от кода :(

teddles

Registered
Здравейте,

Опитвам се да си направя един онлайн магазин и чета от една php книга, където има една глава по темата. Но скрипта ми дава грешки. Ще питам за една от тях, надявам се другите да си ги оправя сама.

Та когато го тествам, мога спокойно да добавям продукти към количката си и да ги изтривам от нея, в кошницата ми се виждат всички нужни характеристики, но когато добавя няколко различни продукти, общата цена, която трябва да се получи е грешна. Запазва се цената на първия добавен продукт , а следващите въобще не ги взема в предвид.

Ето част от скрипта на cart.php, където според мен е пробема:

<?php

$total = 0;

while ($row = mysql_fetch_array ($results)) {

echo "<tr valign=\"middle\">";
extract ($row);
$prod = "SELECT * FROM products " .
"WHERE products_prodnum = '$carttemp_prodnum'";
$prod2 = mysql_query ($prod);
$prod3 = mysql_fetch_array($prod2);
extract($prod3);

echo "<td><form method=\"POST\" action=\"modcart.php?action=change\">
<input type=\"hidden\" name=\"modified_hidden\" value=\"$carttemp_hidden\">
<input type=\"text\" name=\"modified_quan\" size=\"2\" value =\"$carttemp_quan\" style=\"font-size: 14px; font-family: Arial; font-weight: bold; color: #487c9a; width: 25px; height: 25px; text-align: center; padding-bottom: 4px;\">";
echo "</td><td>";
echo "<a href=\"getprod.php?prodid=" . $products_prodnum . "\">";
echo "THUMBNAIL<br>IMAGE</a></td><td>";
echo "<a href=\"getprod.php?prodid=" . $products_prodnum . "\">";
echo $products_name;
echo "</a></td><td >";
echo $products_price;
echo "</td><td>";

$extprice = number_format ($products_price * $carttemp_quan, 2);
echo $extprice;
echo "</td><td>";
echo '<input type="submit" name="Submit" value="Промени " style="height: 25px; background: url(../menu/butt_shop.gif) repeat-x top left; border-bottom: 2px #000 solid; border-right: 2px #000 solid; border-top: 2px solid #f5ecdb; border-left: 2px solid #f5ecdb; font-size: 13px; font-family: Arial; color: #f5ecdb; text-align: center; padding-bottom: 4px;"></form></td><td>';
echo "<form method=\"POST\" action=\"modcart.php?action=delete\">
<input type=\"hidden\" name=\"modified_hidden\" value=\"$carttemp_hidden\">";
echo '<input type="submit" name="Submit" value="Изтрий" style="height: 25px; background: url(../menu/butt_shop2.gif) repeat-x top left; border-bottom: 2px #000 solid; border-right: 2px #000 solid; border-top: 2px solid #f5ecdb; border-left: 2px solid #f5ecdb; font-size: 13px; font-family: Arial; color: #f5ecdb; text-align: center; padding-bottom: 4px;"></form></td></tr>';

$total = $extprice + $total;

}

?>
<tr>
<td colspan="4" class="contacts_left">Сума преди доставката:</td>
<td class="contacts_left"><?php echo number_format ($total,2); ?></td>
<td class="contacts_left"></td>
</tr>


Ако можете да ми помогнете да разреша това, ще съм Ви много благодарна!
 
Здравей,
защо не пробваш вместо
Код:
$extprice = number_format ($products_price * $carttemp_quan, 2); 
$total = $extprice + $total;

това

Код:
$total = $products_price * $carttemp_quan+ $total;

не виждам как може да имаш проблем заради форматираната цена, но това което си дала като информация не е съвсем достатъчно. Ако дадеш целия код за страницата може да бъде по-лесно.
 
Много ви благодаря за бързите отговори! Не, не ми дава съобщение за грешка, а просто аз виждам, че скрипта не е пресметнал отговора както трябва.

Заместих $total = $extprice + $total; с $total = $products_price * $carttemp_quan+ $total; и се оправи!

И на мен наистина не ми е ясно дали проблема беше във функцията number_format, но поне сега работи *phew*.
 

Горе