Автор Тема: дополнительное поле в корзине  (Прочитано 5919 раз)

Оффлайн otdich

  • Пользователь
  • **
  • Сообщений: 29
    • Просмотр профиля
дополнительное поле в корзине
« : Января 20, 2013, 02:12:29 pm »
лего 5.0.2
В shopping_cart.tpl.html я добавил поле дополнительное
<input type="text" name="koment_z" id="koment_z" size="35"  {* onChange="$('#cart').submit();" *}/>
т.е. для каждого товара в корзине можно добавить коментарий

В Б.Д. добавил в таблицу SS_ordered_carts поле koment_z

В файл order_plase.php изменил участок:
//write to db
               $order_insert=array(); 
               $order_insert['orderID']=$oid;
               $order_insert['productID']=$tmp[0];
               $order_insert['name']=$articul.$tmp[1];
               $order_insert['Price']=$r[1];
               $order_insert['Quantity']=$tmp[2];
               $order_insert['koment_z']=$_POST["koment_z"];   
               add_field(ORDERED_CARTS_TABLE, $order_insert);

но комент не добавляется в базе. Где не прав?
« Последнее редактирование: Января 20, 2013, 07:24:29 pm от nictboom »

nictboom

  • Гость
Re: дополнительное поле в корзине
« Ответ #1 : Января 20, 2013, 03:50:42 pm »
не все так просто.
поле добавляется в shopping_cart.tpl.html, который обрабатывается shopping_cart.php, $order_insert['koment_z'] находится в order_plase.php. и где связь?
начинать нужно с shopping_cart.php, принимать $_POST["koment_z"] добавлять в сессию, например, $_SESSION["koment_z"],
а уже потом отправлять значение $_SESSION["koment_z"] через order_plase.php в бд.

Оффлайн otdich

  • Пользователь
  • **
  • Сообщений: 29
    • Просмотр профиля
Re: дополнительное поле в корзине
« Ответ #2 : Января 20, 2013, 05:51:28 pm »
ни как =(
я в shopping_cart.php прописал:
if (isset($_POST["koment_z"]))
    $_SESSION["koment_z"] = $_POST["koment_z"];
в order_place.php прописал:
//now move shopping cart content to the database

        $k = 0; //total cart value
         $products = array();
         $koment_z = $_SESSION["koment_z"];

//write to db
               $order_insert=array(); 
               $order_insert['orderID']=$oid;
               $order_insert['productID']=$tmp[0];
               $order_insert['name']=$articul.$tmp[1];
               $order_insert['Price']=$r[1];
               $order_insert['Quantity']=$tmp[2];
               $order_insert['koment_z']=$koment_z; 
               add_field(ORDERED_CARTS_TABLE, $order_insert);


Но увы...

используйте BBcode для оформления/отображения кодов html и php(верхняя панель #, при создании/редактирования сообщения).
« Последнее редактирование: Января 20, 2013, 07:25:23 pm от nictboom »

nictboom

  • Гость
Re: дополнительное поле в корзине
« Ответ #3 : Января 21, 2013, 11:04:42 am »
смотря где код вставляете.
приблизительно "набросал":[spoiler]
    if (isset($_GET["shopping_cart"]) || isset($_POST["shopping_cart"]))
    {
if ($_POST["koment_z"]) {
if (isset($_POST["koment_z"])) $_SESSION["koment"] = $_POST["koment_z"];
}
         if (isset($_POST["update"])) //update shopping cart content
         {
//.....
            if ($_POST["koment_z"]!="") {$_SESSION["koment"] = $_POST["koment_z"];}
                else {unset($_SESSION["koment"]);}
и
                      //product info
                    $tmp = array(
                        $_SESSION["gids"][$i],
                        $r[0].$variants,
                        $_SESSION["counts"][$i],
                        ($_SESSION["counts"][$i]*$r[1])." ".CONF_CURRENCY_ID_RIGHT,
                        $r[2],
                        $_SESSION["koment"]
                    );
//.....
                    //write to db
                                        $order_insert=array(); 
                                        $order_insert['orderID']=$oid;
                                        $order_insert['productID']=$tmp[0];
                                        $order_insert['name']=$articul.$tmp[1];
                                        $order_insert['Price']=$r[1];
                                        $order_insert['Quantity']=$tmp[2];
                                        $order_insert['Quantity']=$tmp[5];
                                        add_field(ORDERED_CARTS_TABLE, $order_insert);
[/spoiler]

но это все фигня на самом деле, поскольку при таком раскладе будет всего один комент ко всем товарам в корзине.
нужно дофига чего править в shopping_cart.php
« Последнее редактирование: Января 21, 2013, 04:28:32 pm от nictboom »