Перейти к содержанию
Форум поддержки пользователей VamShop

проблема c ajax корзиной в 1,65


Рекомендуемые сообщения

Необходимо исправить метку в листинге товаров

данная метка не работает с 1,65

в product_listing_list.html изменил {$module_data.PRODUCTS_BUTTON_BUY_NOW} на

<form onsubmit="doAddProduct(this); return false;" id="cart_quantity" action="index.php?action=buy_now&BUYproducts_id={$module_data.PRODUCTS_ID}&action=add_product" method="post">

<input type="text" name="products_qty" value="1" style="width: 30px; height: 13px; text-align: right" />

<input type="hidden" name="products_id" value="{$module_data.PRODUCTS_ID}" />

<input type="image" src="{$tpl_path}buttons/russian/button_in_cart.gif" alt="Добавить в корзину" title=" Добавить в корзину " />

</form>

и товар не добавляется при нажатии

до этого 1,64 все ок было

Хочу что бы с 1,65 дружило, не пойму в чем проблема.

В движке , в шаблоне ничего не менялось кроме метки.

Кто может помочь?

Ссылка на сообщение
Поделиться на другие сайты

А чем не устраивает стандартная метка в виде ссылки? Она и с ява-скрипт и без очень хорошо работает.

Ссылка на сообщение
Поделиться на другие сайты
  • 2 months later...

Проблема та же, только версия теперь 1,67

в 1,67 изменился файл jscript_ajax_cart.js и понеслось

если оставить старый, тогда fancybox не работает и открывает картинки в новом окне, если поставить новый то не работает ajax

Необходимо изменить код в product_listing_list.htm

HELP

Ссылка на сообщение
Поделиться на другие сайты

Дайте хоть ссылку на магазин или ещё что.

По умолчанию всё работает - http://vamshop.ru/index.php

Вот пример.

Ссылка на сообщение
Поделиться на другие сайты

Ну так наверное файлы какие-то не поменяли для 1.67 версии.

Всё ж работает в VamShop 1.67, значит дело в Ваших файлах.

Ссылка на сообщение
Поделиться на другие сайты

Поставил 1,67, все работает

Проблема в немного корявых руках :blink:

Просьба модераторам - УДАЛИТЕ эту теперь уже бессмысленную тему

Ссылка на сообщение
Поделиться на другие сайты

Зачем удалять, Вы напишите, что именно было не так.

Что б если кто столкнётся с такой проблемой, мог и ответ найти в этой теме.

Ссылка на сообщение
Поделиться на другие сайты

Теперь мне точно нужна помошь!!!

Поставил 1,67 с нуля, сделал резервное копирование на старом сайте и перенес на новый

http://1.amurdetal.com - новый

и при добавлении в корзину в листинге происходит следующее:

код в product_listing_list.htm

1. случай

<form id="cart_quantity" action="index.php?action=buy_now&BUYproducts_id={$module_data.PRODUCTS_ID}&action=add_product" method="post">

<input type="text" name="products_qty" value="1" size="3" />

<input type="hidden" name="products_id" value="{$module_data.PRODUCTS_ID}" />

<input type="image" src="{$tpl_path}buttons/russian/button_in_cart.gif" alt="Добавить в корзину" title=" Добавить в корзину " />

</form>

то при нажатии товар добавляется, но страница перескакивает на главную

2.

<form onSubmit="doAddProduct(this); return false;" id="cart_quantity" action="index.php?action=buy_now&BUYproducts_id={$module_data.PRODUCTS_ID}&action=add_product" method="post">

<input type="text" name="products_qty" value="1" style="width: 30px; height: 13px; text-align: right" />

<input type="hidden" name="products_id" value="{$module_data.PRODUCTS_ID}" />

<input type="image" src="{$tpl_path}buttons/russian/button_in_cart.gif" alt="Добавить в корзину" title=" Добавить в корзину " />

</form>

то при нажатии страница не перезагружается но добавляется только последняя позиция списка

Косяк в базе?

Ссылка на сообщение
Поделиться на другие сайты

Всё ж это не стандартный код.

Так Вы верните стандартный шаблон, там работает ajax корзина правильно, без перезагрузки страницы.

Редирект наверное нужно править в /includes/cart_actions.php

Ссылка на сообщение
Поделиться на другие сайты

смысл такой, Поставил 1,67 с нуля, залез в админку, создал группу, в этой группе товар (для проверки)

изменяю код в в product_listing_list.htm - все рабтает на ура

беру резервную копию со старого магазина, загружаю

и такая ерунда получается (в старом точно также, только в старом решил проблему небольшим изменением в файле jscript_ajax_cart.js- НО ЭТО РЕШЕНИЕ НЕ КОРРЕКТНОЕ :( )

Ссылка на сообщение
Поделиться на другие сайты

Сложно так наугад сказать, раз файлы не меняются, что-то в базе не так у товаров.

Не знаю, может поля Минимум и максимум для заказа не заполены или ещё что.

Ссылка на сообщение
Поделиться на другие сайты

Сделал следующее, вернулся на 1,64 (установил с нуля)

загрузил резервную копию, скопировал уже готовый product_listing_list.htm

Все работает

Теперь решил обновится сначала до 1,65 потом 1,66, далее 1,67

на обновлении 1,64 до 1,65 выскочила ошибка при экспорте в БД

SQL-запрос:

ALTER TABLE admin_access ADD edit_orders INT( 1 ) ;

Ответ MySQL:

#1060 - Duplicate column name 'edit_orders'

и с добавлением в корзину, сразу вернулись проблемы с добавлением в листинге

Ссылка на сообщение
Поделиться на другие сайты

как и предпологалось проблема в jscript_ajax_cart.js

хотел бы быть первым, но............... меня опередили

пользователь tweenpix уже писал об этом тема называется http://vamshop.ru/fo.../page__p__63917

файл jscript/jscript_ajax_cart.js

ищем


function doAddProduct() {

var forma = $('#cart_quantity input,select');
var data = 'q=includes/modules/ajax/ajaxCart.php&';
forma.each(function(n,element){
if (element.type == "radio" || element.type == "checkbox") {
if (element.checked)
tmp = element.name + "=" + element.value + "&";
} else {
tmp = element.name + "=" + element.value + "&";
}
if (tmp.length > 3) data = data + tmp;
});
data = data + "action=add_product";

$.ajax({
url : "index_ajax.php",
dataType : "html",
data : data,
type : "GET",
success : function(msg) {
$("#divShoppingCart").html(msg);
}
});
}
[/CODE] заменяем на
[CODE]
function doAddProduct(uniqname) {
jQuery.noConflict();

var forma = jQuery(uniqname+' input,select');
var data = 'q=includes/modules/ajax/ajaxCart.php&';
forma.each(function(n,element){
if (element.type == "radio" || element.type == "checkbox") {
if (element.checked)
tmp = element.name + "=" + element.value + "&";
} else {
tmp = element.name + "=" + element.value + "&";
}
if (tmp.length > 3) data = data + tmp;
});
data = data + "action=add_product";

jQuery.ajax({
url : "index_ajax.php",
dataType : "html",
data : data,
type : "GET",
success : function(msg) {
jQuery("#divShoppingCart").html(msg);
}
});
}
в product_listing_*.html добавляем метку

{if $module_data.PRODUCTS_QUANTITY != '0'}
<form id="cart_quantity_{$module_data.PRODUCTS_ID}" {if $smarty.const.AJAX_CART == 'true'}onsubmit="doAddProduct('#cart_quantity_{$module_data.PRODUCTS_ID}'); return false;"{/if} action="index.php?action=buy_now&BUYproducts_id={$module_data.PRODUCTS_ID}&action=add_product" method="post">
<input type="text" name="products_qty" value="1" size="3" />
<input type="hidden" name="products_id" value="{$module_data.PRODUCTS_ID}" />
<input type="image" src="{$tpl_path}buttons/russian/button_in_cart.gif" alt="Добавить в корзину" title=" Добавить в корзину " />
</form>{/if}
[/code]

И вам будет счестье ^_^

Ссылка на сообщение
Поделиться на другие сайты

в \templates\шаблон\module\product_listing\

Тут подправил в двух файлах, вроде час прошел, полет нормальный, спасибо!

Всем спасибо.

Ссылка на сообщение
Поделиться на другие сайты
×
×
  • Создать...