Codeigniter: добавление товара в корзину не работает

Моя функция «Добавить в корзину» не добавляла еду, когда я нажимал кнопку «Добавить в корзину».

Контроллер: Asiabuffet.php

class Asiabuffet extends CI_Controller {

    public function __construct()
    {
        parent::__construct();
        $this->load->library('cart');
        $this->load->model('food_model');
    }

    public function index()
    {
        $data['data']=$this->food_model->get_all_food();
        $this->load->view("front/asiabuffet",$data);
    }

    function add_to_cart(){ 
        $data = array(
            'id' => $this->input->post('id_food'), 
            'name' => $this->input->post('judul'), 
            'qty' => $this->input->post('quantity'), 
        );
        $this->cart->insert($data);
        echo $this->show_cart(); 
    }

    function show_cart(){ 
        $output = '';
        $no = 0;
        foreach ($this->cart->contents() as $items) {
            $no++;
            $output .='
                <tr>
                    <td>'.$items['name'].'</td>
                    <td>'.$items['qty'].'</td>
                    <td><button type = "button" id = "'.$items['rowid'].'" class = "remove_cart btn btn-danger btn-sm">Cancel</button></td>
                </tr>
            ';
        }
        return $output;
    }

    function load_cart(){ 
        echo $this->show_cart();
    }

    function delete_cart(){ 
        $data = array(
            'rowid' => $this->input->post('row_id'), 
            'qty' => 0, 
        );
        $this->cart->update($data);
        echo $this->show_cart();
    }
}

Модели: Food_model.php

class Food_model extends CI_Model{

    function get_all_food(){
        $result=$this->db->get('food');
        return $result;
    }

}

Просмотры: front / asiabuffet.php

<div class = "col-md-12">
                    <?php foreach ($data->result() as $row) : ?>
                    <table class = "table table-form">
                        <tbody>
                            <tr>
                                <td><?php echo $row->judul;?></td>
                                <td>
                                    <div class = "form-group">
                                        <div class = "col-md-2"></div>
                                        <div class = "col-md-8">
                                            <input type = "number" name = "quantity" id = "<?php echo $row->id_food;?>" value = "0" class = "quantity form-control">
                                        </div>
                                        <div class = "col-md-2"></div>

                                    </div>
                                </td>
                                <td>
                                    <div class = "col-md-12 text-center">
                                        <button class = "btn btn-primary btn-submit-card" data-id_food = "<?php echo $row->id_food;?>" data-judul = "<?php echo $row->judul;?>" onclick = "add_cart(<?php echo $row->id_food;?>)">Add To Cart</button>
                                    </div>
                                </td>
                            </tr>
                        </tbody>
                    </table>
                    <?php endforeach;?>
                </div>
                <div class = "col-md-4">
                    <h4>Shopping Cart</h4>
                    <table class = "table table-striped">
                        <thead>
                            <tr>
                                <th>Items</th>
                                <th>Qty</th>
                                <th>Actions</th>
                            </tr>
                        </thead>
                        <tbody id = "detail_cart">
                        </tbody>
                    </table>

JQuery на просмотре

<script type = "text/javascript">
            $(document).ready(function(){
                $('.add_cart').click(function(){
                    var id_food  = $(this).data("id_food");
                    var judul    = $(this).data("judul");
                    var quantity = $('#' + id_food).val();
                    $.ajax({
                        url : "<?php echo site_url('asiabuffet/add_to_cart');?>",
                        method : "POST",
                        data : {id_food: id_food, judul: judul, quantity: quantity},
                        success: function(data){
                            $('#detail_cart').html(data);
                        }
                    });
                });

                $('#detail_cart').load("<?php echo site_url('asiabuffet/load_cart');?>");

                $(document).on('click','.remove_cart',function(){
                    var row_id=$(this).attr("id"); 
                    $.ajax({
                        url : "<?php echo site_url('asiabuffet/delete_cart');?>",
                        method : "POST",
                        data : {row_id : row_id},
                        success :function(data){
                            $('#detail_cart').html(data);
                        }
                    });
                });
            });
        </script>

Я не знаю, что делать ... На самом деле я сделал 2 просмотра для добавления корзины в другое представление с именем checkout, но оно все еще не добавлено. Итак, я делаю таблицу на той же странице, чтобы увидеть, добавляется ли еда, которую щелкают, в таблицу или нет. И это все еще не может быть добавлено в таблицу. Codeigniter: добавление товара в корзину не работает

Вы уверены, что правильно попадаете по URL-адресу через ajax. Если да, то вам необходимо проверить почтовые данные, распечатав почтовые данные в контроллере.

PHP Geek 02.11.2018 13:34

это то же самое, но он все еще не может работать

Kuroda Ayumu 02.11.2018 13:41

Это не сохраняется в базе данных. Правильно?

PHP Geek 02.11.2018 13:44

да, его нельзя сохранить и не добавляя

Kuroda Ayumu 02.11.2018 13:53

function add_to_cart () {$ data = array ('id' => $ this-> input-> post ('id_food'), 'name' => $ this-> input-> post ('judul'), 'кол-во '=> $ this-> input-> post (' количество '),); $ this-> cart-> insert ($ data); эхо $ this-> show_cart (); } Этот метод не работает. Правильно? не могли бы вы подтвердить, что если вы распечатываете данные публикации, они отображаются так, как вам нужно

PHP Geek 02.11.2018 13:55

он также не распечатал данные

Kuroda Ayumu 02.11.2018 14:16
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
6
513
0

Другие вопросы по теме