Добрый день, товарищи программисты! Подскажите пожалуйста неопытному, где у меня в скрипте ошибка. Точнее даже так, не ошибка, а неправильный подсчет количества заказанного товара с сайта, т.е. на сайте заказываешь определенное количество товара, в корзину падает совсем другое количество
Вот код корзины
PHP код:
<?
define("STOP_STATISTICS", true);
require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
//echo "_REQUEST:<pre>"; print_r ( $_REQUEST ); echo "</pre>"; echo "<br>";
$action = strtoupper($_REQUEST["ACTION"]);
$productID = intval($_REQUEST["ELEMENT_ID"]);
$quantity = intval($_REQUEST["quantity"]);
if ( $quantity <= 0 )
{
$quantity = 1;
}
if ( intval ( $productID ) > 0 )
{
if(($action == "ADD2BASKET" || $action == "BUY") && $productID > 0)
{
if(CModule::IncludeModule("iblock") && CModule::IncludeModule("sale") && CModule::IncludeModule("catalog"))
{
$res = Add2BasketByProductID( $productID, $quantity );
if ( $res )
{
if ( $_REQUEST["delay"] == "Y" )
{
$arFields = array( "DELAY" => "Y" );
CSaleBasket::Update( $res, $arFields );
}
}
}
}
}
else if ( is_array ( $_REQUEST["arELEMENT_ID"] ) && count ( $_REQUEST["arELEMENT_ID"] ) > 0 )
{
//echo "_REQUEST:<pre>"; print_r ( $_REQUEST ); echo "</pre>"; echo "<br>";
$arELEMENT_ID = $_REQUEST["arELEMENT_ID"];
$arELEMENT_QUANTITY = $_REQUEST["arELEMENT_QUANTITY"];
foreach ( $arELEMENT_ID AS $key => $productID )
{
if(($action == "ADD2BASKET" || $action == "BUY") && $productID > 0)
{
if(CModule::IncludeModule("iblock") && CModule::IncludeModule("sale") && CModule::IncludeModule("catalog"))
{
$quantity = 1;
if ( isset ( $arELEMENT_QUANTITY[$key] ) && intval ( $arELEMENT_QUANTITY[$key] ) <= 0 )
{
$quantity = 0;
}
else if ( intval ( $arELEMENT_QUANTITY[$key] ) > 0 )
{
$quantity = $arELEMENT_QUANTITY[$key];
}
if ( intval ( $quantity ) )
{
$res = Add2BasketByProductID( $productID, $quantity );
if ( $res )
{
if ( $_REQUEST["delay"] == "Y" )
{
$arFields = array( "DELAY" => "Y" );
CSaleBasket::Update( $res, $arFields );
}
}
}
}
}
}
//echo '!!';
}
//echo $_REQUEST["back_url"];
if ( strlen ( $_REQUEST["back_url"] ) > 0 )
{
if ( $_REQUEST["no_urldecode"] == "Y" )
{
LocalRedirect ( $_REQUEST["back_url"] );
}
else
{
LocalRedirect ( urldecode ( $_REQUEST["back_url"] ) );
}
}
require_once($_SERVER["DOCUMENT_ROOT"].BX_ROOT."/modules/main/include/epilog_after.php");
?>
Вот код продукта
PHP код:
<tr><td>
<div align="center"><img width="200" height="148" src="http://penetron-shop.ru/images/foto_tovarov/sazilast_24.jpg" alt="Сазиласт 24" title="Сазиласт 24" />
<br />
</div>
<br />
<div align="center"> Сазиласт 24
<br />
</div>
<br />
<div class="prod_gr"> <form id="add2basket_form_533" method="post" action="/lib/add2basket.php" name="add2basket_form_533"> <input type="hidden" value="ADD2BASKET" name="ACTION" /> <input type="hidden" value="/poliuretanovye_i_akrilovye_germetiki_dlya_mezhpanelnyh_shvov_stykov.php" name="back_url" />
<table cellspacing="0" cellpadding="0" border="0" style="border-collapse: collapse;">
<tbody>
<tr> <td width="63" height="20">тара</td> <td width="65" height="20">цена</td> <td width="60" height="20">кол-во</td> </tr>
<tr> <td valign="bottom"> <input type="checkbox" class="check_box" style="margin: 4px 0px;" value="483" name="arELEMENT_ID[]" /> 6.6 <small>кг</small> </td> <td valign="bottom">699.60 р.</td> <td valign="bottom"> <input type="text" class="prod_num" value="1" name="arELEMENT_QUANTITY" /> </td> </tr>
<tr> <td valign="bottom"> <input type="checkbox" class="check_box" style="margin: 4px 0px;" value="484" name="arELEMENT_ID[]" /> 16.5 <small>кг</small> </td> <td valign="bottom">1658.25 р.</td> <td valign="bottom"> <input type="text" class="prod_num" value="1" name="arELEMENT_QUANTITY" /> </td> </tr>
</tbody>
</table>
</form> </div>
<div class="order"> <a id="form_533" class="order_click_2" href="#">Заказать</a> </div></td></tr>