Jump to content
  • 0

Корзина для интернет магазина. Php, Ajax, Wordpress


maliyshock
 Share

Question

Всем привет! Я начал на днях делать корзину для сайта. Делаю это впервые, с ajax и js знаком плохо, отсюда ошибки и вопросы.

http://jazz-i-lopata.ru/category/%D0%B8%D0%B3%D1%80%D1%8B/#

Вот что готово - при клике на ссылку "добавить в корзину" товар добавляется в корзину и выводится таблица с количеством товара, его стоимостью и общей стоимостью.

Вся эта схема пока работает благодоря 3-м файлам.

header.php - в котором отслеживаются события кликов по тому или иному элементу и запускается соответствующая функция.
<script language="javascript">

        $(document).ready(function() {                   $(".submit").click(function(){            var id = $(this).attr("id");            $.post("<?php bloginfo("url"); ?>/korzina", {data: id},            function(data){              $("#cart").html(data);            });          });                    $(".remove").click(function(){            var remove_id = $(this).attr("id");            $.post("<?php bloginfo("url"); ?>/korzina", {remove: remove_id},            function(data){              $("#cart2").html(data);            });            $("#cart").hide();          });        });    </script>

При клике на ссылку "Добавить в карзину" запускается первая функция, которая передаёт на страницу korzina - id добавляемого товара.
На странице korzina происходит получение id товара и подсчёт количества. 

session_start();if (isset($_POST['data'])) {    $data = $_POST['data'];    $_SESSION['cart'][$data] += 1;}if (isset($_POST['remove'])) {    $remove = $_POST['remove'];    session_unset($_SESSION['cart'][$remove]);}

Есть ещё файл category.php в котором настроен вывод товаров и указаны соответствующие id и классы.

Что не работает:
- по клику на кнопку "удалить" по аналогии с кнопкой "добавить в карзину" должен запускаться процесс отсылки id на страницу karzina. После чего если условие isset($_POST['remove']) выполняется из массива сессии должен быть удален переданный id и возвращен список всех оставшихся элементов но этого почему-то не происходит.
Ии вот, пока я на этом повис не понимаю в чём причина. Кто знает?


И ещё вопрос. Ребят, какие форумы посоветуете, где адекватные люди могут адекватно подсказать?

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

не знаю, может я не правильно понял, но может так:

if (isset($_SESSION['cart']$_POST['remove'])) {		foreach($_SESSION['cart'] as $key => $val) {			if($_POST['id'] == $key) {				unset($_SESSION['item'][$key]);			}		}}

не плохо было бы показать распечатанный массив $_SESSION['cart']

Link to comment
Share on other sites

  • 0

rus

Спасибо, я попробую

 

Veseloff

Честно говоря, я искал, но ничего годного не нашёл. Может вы что-то посоветуете?

В идеале, конешно, научиться свои скрипты писать, т.к. их проще потом совершенствовать и переделывать.

 

Link to comment
Share on other sites

  • 0
Да, я посоветую не пользоваться вордпрессом.

Чем же он вам так не угодил? 
Я спрашивал про плагин корзины.

Если же вам нечего подсказать,  нечем помочь, нечего предложить то зачем вообще писать такие посты?
Link to comment
Share on other sites

  • 0

http://yandex.ru/yandsearch?text=wordpress+shop+plugin

Очень много вариантов. Сомневаюсь, что вы все смотрели и ни один не подошёл. Ну а неугодил он тем, что как минимум это движок для блогов и делать из него интернет-магазин довольно странное занятие. Ну и на просторах интернета вы можете прочитать одстаточно о недостатках вордпресса.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Similar Content

    • By its_a_me_mario
      При нажатии на кнопку отправления в форме независимо есть ли текст в форме или нет в любом случае редиректит на главную страницу. Ни письма на почте, ни возникающих ошибок в форме нет.
      json rest api включен
      откатывал contact form 7 до более ранних версий
      smpt плагин настроен
      все остальные плагины поочерёдно отключал
      ни что не помогает
      если отправлять письма с чистого php соответствующей функцией, то письма доходят до почты
      в консоли ошибок нет
      Заранее спасибо, мучаюсь два дня
    • By Alarr
      При стандартных Вордпрессовских комментариях, когда оставляешь коммент и кликаешь на сабмит - изменяется урла.
      Например:
      Было вот так - http: // testsite / uncategorized / test-post-1 /
      А становится вот так - http: // testsite / uncategorized / test-post-1 / # comment-1428
      Или даже вот так: http: // testsite / uncategorized / test-post-1 /? Unapproved = 1246588 & moderation-hash = 40271ae6cdb307b9243b08107da795ae # comment-1246588
      Подскажите пожалуйста, что нужно сделать, чтобы урла текущей страницы никогда не менялась при комментировании.
      Там есть какое-то простое решение, или нужно аяксом это дело решать?
      Спасибо.
    • By Only091
      Помогите пожалуйста, не получается сделать постраничную навигацию. Делал все по урокам. в Итоге получилось сделать два разных каталога один с фильтрами другой с постраничной навигацией. И теперь я пытаюсь объединить два каталога. Но не получается. Сами файлы урока в архике каталог. Буду очень благодарен если мне помогут! catalog.phpcatalogDB.js
      каталог.7z
    • By stonelabs
      Всем привет!

      Наша компания (https://stone-labs.com/) ищет команды (!) разработчиков для реализации ряда заказных проектов. Местоположение не важно - мы практикуем удаленную работу.
       
      Обязательные требования:
      Laravel или Symfony frameworks jQuery (UI), JavaScript, Ajax, Bootstrap MySQL REST API, опыт внедрения Third-party APIs английский на уровне чтения и понимания технической документации опыт в разработке веб приложений и их архитектуры с нуля корректное использование git & pull request flow работа в дневное время во временной зоне UTC +3  
      Будет плюсом, если у вашей команды есть:
      опыт с GitLab CI/CD, Jenkins опыт с MySQL Cluster, MongoDB, PostgreSQL, Redis опыт с Vue.js опыт Linux администрирования, SSH, Nginx, DevOps  
      Если вам интересно сотрудничество, пожалуйста, пишите на наш ящик wanted@stone-labs.com 
    • By Defroing
      <form method="POST" action= "action_handler.php" id="form"> <section class="table_1"> <table class="iksweb"> <tbody> <tr> <td rowspan="3"><b>История компании «Mc donald's»</b> <h3 class="the">Кто основал компанию «Mc donald's»?</h3> <section class="conteiner"> <div class="checkbox"> <input type="checkbox" class="i-6" id="i6" value="0" name="formDoor[]"> <label for="i6" tabindex="12">Роналд Макдоналд</label> </div> <div class="checkbox"> <input type="checkbox" class="i-6" id="i7" value="0" name="formDoor[]"> <label for="i7" tabindex="13">Рэй Крок</label> </div> <div class="checkbox"> <input type="checkbox" class="i-6" id="checkbox_68" value="1" name="formDoor[]"> <label for="checkbox_68" tabindex="14">Братья Дик и Мак Макдоналд</label> </div> <div class="checkbox"> <input type="checkbox" class="i-6" id="checkbox_170" value="0" name="formDoor[]"> <label for="checkbox_170" tabindex="14">Клинт Иствуд</label> </div> <div class="out-block out-6"></div> </section> </td> </tr> </tbody> </table> <div class="dsw"> <button class="b-6" tabindex="11" id="btn-1" type="submit" name="formSubmit">Отправить</button> </div> </form> <?php mysql_connect("localhost", "root", ""); mysql_select_db('olala') or die(mysql_error()); if(isset($_GET['submit'])){ $arr=$_GET; foreach ($arr as $key => $value) { $reg="/^check/";//отбираю нужные элементы if( preg_match ($reg,$key )) { //$new_mass[]=$arr[$key]; //print_r($new_mass); echo $arr[$key]; $sql_1="INSERT INTO `table_one` (`name`) VALUES('$arr[$key]')"; mysql_query($sql_1) or die(mysql_error()); } } } ?>  Создаю опросник и хочу, чтобы чекбоксы заносились в БД(таблицу пока не создавал). Хотелось узнать на счёт php кода, сможете подсказать, что в нём не так (дать какие нибудь советы). В openserver опросник пока не выкладывал.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy