Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.08.2012, 15:35   #1
PavelACM
Новичок
Джуниор
 
Регистрация: 31.08.2012
Сообщений: 1
По умолчанию Найти ошибку в корзине

Добрый день, товарищи программисты! Подскажите пожалуйста неопытному, где у меня в скрипте ошибка. Точнее даже так, не ошибка, а неправильный подсчет количества заказанного товара с сайта, т.е. на сайте заказываешь определенное количество товара, в корзину падает совсем другое количество
Вот код корзины
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 <= )
    {
        
$quantity 1;
    }
    if ( 
intval $productID ) > )
    {
        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"] ) > )
    {
        
//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] ) <= )
                    {
                        
$quantity 0;
                    }
                    else if ( 
intval $arELEMENT_QUANTITY[$key] ) > )
                    {
                        
$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"] ) > )
    {
        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
PavelACM вне форума Ответить с цитированием
Старый 31.08.2012, 19:11   #2
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Цитата:
Сообщение от PavelACM Посмотреть сообщение
Вот код корзины
...
Вот код продукта
Вот ссылка на рекомендации по поиску ошибок – phpfaq.ru/debug.
Andkorol вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
найти ошибку SVing Паскаль, Turbo Pascal, PascalABC.NET 5 07.04.2012 19:42
Найти ошибку. stas45rus Помощь студентам 3 17.01.2012 20:07
Работа с циклами, Не обнавляется кол-во товара в корзине bboyb-rock PHP 4 08.04.2011 19:14
найти ошибку IceFlame1292 Помощь студентам 4 11.01.2011 20:14
С++ Найти ошибку! sir.andrey Помощь студентам 5 20.10.2010 13:06