Results 1 to 3 of 3

Attributes disappearing when quantity is updated in shopping cart.

This is a discussion on Attributes disappearing when quantity is updated in shopping cart. within the New osCommerce Contributions forums, part of the osCommerce 2.2 Forums category; Attributes disappearing when quantity is updated in shopping cart. I just tried to fix my shoping cart by using this ...

      
  1. #1
    osCMax Developer

    michael_s's Avatar
    Join Date
    Jul 2002
    Location
    Phoenix, AZ
    Posts
    20,795
    Rep Power
    573


    Post Attributes disappearing when quantity is updated in shopping cart.

    Attributes disappearing when quantity is updated in shopping cart.

    I just tried to fix my shoping cart by using this contribution ..
    And it works with the all option ecept the text field.

    After that i use this code and it works in all case.

    File
    catalog/includes/classes/shopping_cart.php
    Just replace this function
    function update_quantity($products_id, $quantity = '', $attributes = '')
    {
    ----
    ---
    }

    with this new
    function update_quantity($products_id, $quantity = '', $attributes = '') {
    global $customer_id;
    if (empty($quantity)) return true; // nothing needs to be updated if theres no quantity, so we return true..

    $this->contents[$products_id]['qty'] = $quantity;
    // update database
    if (tep_session_is_registered('customer_id')) tep_db_query("update " . TABLE_CUSTOMERS_BASKET . " set customers_basket_quantity = '" . $quantity . "' where customers_id = '" . (int)$customer_id . "' and products_id = '" . tep_db_input($products_id) . "'");

    if (is_array($attributes)) {
    reset($attributes);
    while (list($option, $value) = each($attributes)) {
    // BOM - Options Catagories
    $attr_value = NULL;
    if ( !is_array($value) ) {
    $this->contents[$products_id]['attributes'][$option] = $value;
    $attr_value = $value;
    if (tep_session_is_registered('customer_id')) tep_db_query("update " . TABLE_CUSTOMERS_BASKET_ATTRIBUTES . " set products_options_value_id = '" . (int)$value . "', products_options_value_text = '" . tep_db_input($attr_value) . "' where customers_id = '" . (int)$customer_id . "' and products_id = '" . tep_db_input($products_id) . "' and products_options_id = '" . (int)$option . "'");
    } elseif ( isset($attributes[$option]['t']) && !empty($attributes[$option]['t']) ) {
    $this->contents[$products_id]['attributes'][$option] = $value;
    $attr_value = htmlspecialchars(stripslashes($attributes[$option]['t']), ENT_QUOTES);
    if (tep_session_is_registered('customer_id')) tep_db_query("update " . TABLE_CUSTOMERS_BASKET_ATTRIBUTES . " set products_options_value_id = '" . (int)$value . "', products_options_value_text = '" . tep_db_input($attr_value) . "' where customers_id = '" . (int)$customer_id . "' and products_id = '" . tep_db_input($products_id) . "' and products_options_id = '" . (int)$option . "'");
    } elseif ( isset($attributes[$option]['c']) ) {
    $this->contents[$products_id]['attributes'][$option] = $value;
    foreach ($value as $v) {
    $attr_value = $v;
    if (tep_session_is_registered('customer_id')) tep_db_query("update " . TABLE_CUSTOMERS_BASKET_ATTRIBUTES . " set products_options_value_id = '" . (int)$value . "', products_options_value_text = '" . tep_db_input($attr_value) . "' where customers_id = '" . (int)$customer_id . "' and products_id = '" . tep_db_input($products_id) . "' and products_options_id = '" . (int)$option . "'");
    }
    }
    // EOM - Options Catagories
    }
    }
    }

    Pls mail me in both case if this come useful to u or not

    Thanks
    kishore



    More...
    Michael Sasek
    osCMax Developer


    osCmax Installation Service
    - Have our professionals install osCmax on your server - same day service!
    osCmax 2.5 User Manual - the must have beginners guide to osCmax v2.5

    Stay Up To Date with everything osCMax:
    Free osCmax Newsletters - Security notices, New Releases, osCMax News
    osCmax on Twitter - Up to the minute info as it happens. Know it first.

    osCmax Documentation

  2. #2
    Lurker
    Join Date
    Nov 2008
    Posts
    2
    Rep Power
    0


    Default Re: Attributes disappearing when quantity is updated in shopping cart.

    Michael,
    I tried to update but I get this error.

    Parse error: syntax error, unexpected T_VARIABLE, expecting T_FUNCTION in /includes/classes/shopping_cart.php on line 237

    Maby include all the code that has to be changed?

    If anyone can help that would be great.

    Thanks,
    Mark

  3. #3
    Lurker
    Join Date
    Nov 2008
    Posts
    2
    Rep Power
    0


    Default Re: Attributes disappearing when quantity is updated in shopping cart.

    I see now.

    You just copy and paste the latest uploads from the oscommerce site.

Similar Threads

  1. Fast Update to Shopping Cart Quantity
    By michael_s in forum New osCommerce Contributions
    Replies: 0
    Last Post: 07-28-2007, 02:37 AM
  2. Shopping Cart Should Update Quantity when clicking Checkout
    By Dubious in forum osCmax v2 Customization/Mods
    Replies: 11
    Last Post: 02-28-2007, 12:04 PM
  3. How to put the product attributes box in the shopping cart?
    By loba in forum osCmax v1.7 Discussion
    Replies: 0
    Last Post: 03-23-2005, 09:59 PM
  4. Disappearing Orders
    By b4damien in forum osCommerce 2.2 Installation Help
    Replies: 0
    Last Post: 01-12-2004, 02:14 AM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •