Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/34: Рейтинг темы: голосов - 34, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 32

Корзина на php ajax mysql

09.11.2013, 03:54. Показов 6456. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Пишу корзину для интернет-магазина, нашла пример в сети, как это можно сделать, и разбираю его. Но столкнулась с проблемой: при нажатии на кнопку "В корзину" не происходит, собственно, добавления товара в корзину, видимо не срабатывает onlcick, а может и нет. Подскажите, что не так!! Заранее спасибо!!
Вложения
Тип файла: rar alc.rar (7.1 Кб, 84 просмотров)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.11.2013, 03:54
Ответы с готовыми решениями:

PHP+jQuery+AJAX+JSON+MySQL
Здравствуйте!!! Помогите пожалуйста! Начала изучать ajax, понадобилось мне это в связи с написанием диплома. Мне необходимо прикрепить...

Удаление данных с MySQL + Ajax + PHP
Сделал удаление данных с бд, с помощью ajax Источник http://makitweb.com/how-to-delete-record-from-mysql-table-with-ajax/ Все прекрасно...

Обновление данных в таблице используя Jquery, Ajax, Php и MySQL
Всем привет, друзья!! Буду признателен за вашу помощь! Ситуация такая: Есть страница на которой есть таблицы с данными из...

17
 Аватар для Vlad_IT
1452 / 360 / 61
Регистрация: 03.04.2010
Сообщений: 2,096
09.11.2013, 04:59
Цитата Сообщение от Ksuha000 Посмотреть сообщение
не происходит, собственно, добавления товара в корзину, видимо не срабатывает onlcick, а может и нет.
Через Ajax отправлялся запрос за адрес
/cart/prod5/qty1/ - где 5 - id товара
И соответственно получался ответ с ошибокй 404 (не найдено).
У вас не настроена работа чпу ссылок. Поэтому нужно обращаться к скрипту корзины
/cart.php?id=5

Вот уже переделанная функция. Строка 20

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function shopping(id){
    c_num = $(cartnum);
    c_total = $(carttotal);
    descr = $('#descr_'+id);
    //в корзину всегда помещаем 1 товар, изменение кол-ва происходит в корзине
    $.get('cart.php?id='+id,function(data) {  
        arr = data.split('|');
        id = arr[0];        //id продукта
        cart = arr[1];      //в корзине сейчас
        action = arr[2];    //экшен
        total2 = arr[3];    //сумма
 
        act = icon+(action =='add' ? "В корзину" : "Удалить");
        c_num.html(cart);
        c_total.html(number_format(total2,','));
        descr.html(act);
    }); 
}
Теперь товар добавляется в корзину. Но узнать это можно только если зайти на страницу корзины. А также количество и общая сумма товаров, не отображается в пункте "В корзине 0шт. (0 руб)". Попробуйте разобраться в этом. Если не получится, пишите сюда что получилось придумать(или написать) или просто пишите, попробуем разобраться
1
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 32
09.11.2013, 11:18  [ТС]
Спасибо! Теперь буду разбираться дальше))
0
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 32
11.11.2013, 00:03  [ТС]
Не могу настроить эту корзину! Товар в корзину добавляет, но его нельзя удалить или добавить больше, да и видно то, что он добавлен только зайдя на соответствующую страницу! Может у меня опять проблема со ссылками? Пыталась переделать функцию checkout, но ничего не получилось(
0
 Аватар для Vlad_IT
1452 / 360 / 61
Регистрация: 03.04.2010
Сообщений: 2,096
11.11.2013, 07:03
Ksuha000, Я заметил, что когда передается запрос на добавление товара в корзину, то не отправляется количество товаров, и выходит что их 0. Давайте так.
1. В клиентском скрипте (shopping.js) переделайте функцию shopping, следующим образом
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function shopping(id){
    c_num = $(cartnum);
    c_total = $(carttotal);
    descr = $('#descr_'+id);
    //в корзину всегда помещаем 1 товар, изменение кол-ва происходит в корзине
    $.get('cart.php?q=1&id='+id,function(data) {   // q - это количество товаров. Судя по комментарию выше, нужно передать 1 товар
        arr = data.split('|');
        id = arr[0];        //id продукта
        cart = arr[1];      //в корзине сейчас
        action = arr[2];    //экшен
        total2 = arr[3];    //сумма
 
        act = icon+(action =='add' ? "В корзину" : "Удалить");
        c_num.html(cart);
        c_total.html(number_format(total2,','));
        descr.html(act);
    }); 
}
2. Еще я заметил что при добавлении товара, нам возвращаются неверные данные, а именно количество товаров в корзине. В файле index.php Вы определяете количество товаров в корзине вот так
PHP
1
<span id="cart_num"><?=(is_array($_SESSION["cart"]) ? count($_SESSION["cart"]) : 0)?></span>
Но почему-то в файле cart.php вот так
PHP
1
$num = get_row_count($catalogdbname, "WHERE id = ".sqlesc($id)); // 20 строка
Переменная $catalogdbname = "tovar", такой таблицы Вы мне не присылали, только goods. Так что определять количество товаров в корзине, будем тем же методом, что и в файле index.php. Для этого, в файле cart.php примерно на 20 строке, совсем удалите этот фрагмент
PHP
1
$num = get_row_count($catalogdbname, "WHERE id = ".sqlesc($id));
Потом в этом же файле, найдите два одинаковых фрагмента и удалите их
PHP
1
$num = array_sum($_SESSION["cart"]);
Это в условном блоке, нам не нужно лишнее определение количества товаров в корзине. Взамен просто перед вот этой строкой
PHP
1
die($id."|".$num."|".$action."|".$_SESSION["cart_total"]);
Напишите вот это
PHP
1
$num = (is_array($_SESSION["cart"]) ? count($_SESSION["cart"]) : 0);
Теперь вроде все работает. Но есть одно но, подсчет общей цены не работает. Это я Вам оставлю на десерт Если не справитесь, пишите, помогу
1
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 32
22.11.2013, 01:07  [ТС]
Здравствуйте! у меня так и не получилось сделать общий подсчет суммы, если покупать несколько товаров! Причем при переходе в саму корзину подсчет ведется верно, но в окошке корзины происходят непонятные вычисления! Как с этим бороться?

Добавлено через 4 минуты
Ой-ой! Скажите, если в файле indexc.php строку 134 переделать таким образом:
...<span id="cart_num"><?=(is_array($_SESSION["cart"]) ? count($_SESSION["cart"]) : 0)?></span> ...
то вроде все получается, не так ли? Или я выдаю желанное за действительное?
0
 Аватар для Vlad_IT
1452 / 360 / 61
Регистрация: 03.04.2010
Сообщений: 2,096
22.11.2013, 02:36
Цитата Сообщение от Ksuha000 Посмотреть сообщение
Ой-ой! Скажите, если в файле indexc.php строку 134 переделать таким образом:
...<span id="cart_num"><?=(is_array($_SESSION["cart"]) ? count($_SESSION["cart"]) : 0)?></span> ...
то вроде все получается, не так ли? Или я выдаю желанное за действительное?
Так в $_SESSION["cart"] хранятся товары. Посмотри в файле index.php после строки 48, как у тебя устроен подсчет суммарной цены, в переменную $allp. И используй такой алгоритм.
0
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 32
22.11.2013, 19:24  [ТС]
А, я поняла, спасибо! Просто вывести еще раз эту переменную) Спасибо большое! А можно настроить этот скрипт, чтобы через radio пользователь мог выбрать цену товара: цену оригинала либо цену копии?
0
 Аватар для Vlad_IT
1452 / 360 / 61
Регистрация: 03.04.2010
Сообщений: 2,096
22.11.2013, 21:29
Цитата Сообщение от Ksuha000 Посмотреть сообщение
А можно настроить этот скрипт, чтобы через radio пользователь мог выбрать цену товара: цену оригинала либо цену копии?
Конечно Только я Вам это писать сам не буду. Вы попробуйте сначала сами, что не получится, пишите, я помогу разобраться
0
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 32
02.12.2013, 02:28  [ТС]
И снова здравствуйте! Хочу в эту корзину добавить возможность выбора размера товара, сделала специальную таблицу в бд, в которой колонки - это наименование товара и возможные размеры обуви. в строках указывается имя товара и наличие обуви соответствующего размера (если есть такой на складе, пишется слово yes), вывела все в зависимости от наличия размеров на страницу через radio. и теперь как-то нужно запомнить значение, которое было выбрано пользователем. Видимо, это нужно делать через javascript, по-крайней мере мне так кажется. Только как? Подскажите, пожалуйста!
Вложения
Тип файла: rar nn.rar (6.0 Кб, 39 просмотров)
0
 Аватар для Vlad_IT
1452 / 360 / 61
Регистрация: 03.04.2010
Сообщений: 2,096
02.12.2013, 03:51
Написал Вам в ЛС.
0
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 32
02.12.2013, 10:12  [ТС]
Здравствуйте! Вот что у меня получилось.))
Вложения
Тип файла: rar size.rar (663 байт, 42 просмотров)
0
 Аватар для Vlad_IT
1452 / 360 / 61
Регистрация: 03.04.2010
Сообщений: 2,096
02.12.2013, 15:03
Ksuha000, у меня все равно не работает. Заметил что в коде используется таблица "tovar", у меня такой нет, только goods и size. Скиньте мне ее пожалуйста.
0
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 32
02.12.2013, 18:37  [ТС]
Вся база данных
Вложения
Тип файла: rar jakson.rar (1.7 Кб, 38 просмотров)
0
 Аватар для Vlad_IT
1452 / 360 / 61
Регистрация: 03.04.2010
Сообщений: 2,096
04.12.2013, 17:52
Скрипт у меня опят не работает, списка товаров нету, а разбираться пока к сожалению времени нет. Просто отправляете это значение на файл car.php при нажатии на кнопку купить, и сохраняйте в сессии например.
0
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 32
04.12.2013, 20:58  [ТС]
А отправлять нужно через javascript, да?
0
 Аватар для Vlad_IT
1452 / 360 / 61
Регистрация: 03.04.2010
Сообщений: 2,096
04.12.2013, 22:14
Ksuha000, так же, как и корзину.
0
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 32
08.12.2013, 02:13  [ТС]
Помогите мне, пожалуйста!! Вообще не могу понять, как это сделать!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.12.2013, 02:13
Помогаю со студенческими работами здесь

Связка php+mysql+ajax: Uncaught TypeError: undefined is not a function
Здравствуйте! Вот уже более 6 часов не могу найти причину неработоспособности своего кода (новичок в этом деле). Есть select в...

php MySQL ajax корзина
Буду благодарен за помощь. Необходимо создать упрощенную корзину покупок. Далее показано то что есть на даннный момент. Есть база,...

Корзина товаров Ajax, PHP, MySQL.
Ребята, киньте кто-нибудь спасательный круг, никак не придумаю как сделать корзину. Есть страница товаров (/catalog.php), сами товары...

Checkbox+AJAX+MYSQL+PHP
Здравствуйте. ПОмогите пожалуйста. У меня есть БД с каналами и ценами. Мне необходимо чтобы при нажатии на чекбоксе считалась сумма в диве....

корзина PHP MySQL
Нужно написать корзину для покупки книг. Можна пример либо сылку на толковую корзинуё Уже столько перелистал а толку 0.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru