【问题标题】:CodeIgniter add to cart error 404CodeIgniter 添加到购物车错误 404
【发布时间】:2018-04-24 05:10:40
【问题描述】:

我目前正在尝试基于 YouTube 教程构建购物车的项目,但每当我点击添加到购物车按钮时,我都会收到错误 404:找不到页面。

产品视图

<div class="col-md-4 product">
    <div class="product-price"><?php echo $product->price; ?></div>
        <a href="<?php echo base_url(); ?>products/details/<?php echo $product->id; ?>">
            <img src="<?php echo base_url(); ?>images/<?php echo $product->image; ?>" />
        </a>
        <div class="product-name"><br>
            <?php echo $product->name; ?>
        </div>
        <div class="product-add">
            <form method="post" action="<?php echo base_url(); ?> cart/add">
                QTY: <input class="qty" type="text" name="qty" value="1" />
                <input type="hidden" name="item_number" value="<?php echo $product->id; ?>"/>
                <input type="hidden" name="price" value="<?php echo $product->price; ?>"/>
                <input type="hidden" name="name" value="<?php echo $product->name; ?>"/>
                <button class="btn btn-primary" type="submit">Add To Cart</button>
            </form>

        </div>          
</div>

产品负责人

<?php
class Products extends CI_Controller{
public function index(){
    //get all products
    $data['products'] = $this->Product_model->get_products();

    //load view
    $data['main_content'] = 'products';
    $this->load->view('layouts/main', $data);
}

public function details($id){
    //get product details from the model
    $data['product'] = $this->Product_model->get_product_details($id);

    //load view
    $data['main_content'] = 'details';
    $this->load->view('layouts/main', $data);
}
}

【问题讨论】:

  • 添加到购物车按钮的 url 可能在您的控制器中没有对应的名称。
  • 我最好的猜测是找不到该页面。
  • 如果没有在您的问题中看到一些代码,很难提供帮助。您可以通过单击编辑按钮重新编辑您的问题。
  • 我添加了我认为会导致问题的代码。
  • 确保您也设置了基本网址。 $config['base_url'] = 'http://localhost/yourprojectname/';

标签: php html css mysql codeigniter


【解决方案1】:

添加以下代码

application/config/ruotes.php

$route['cart/add'] = 'products/addtocart';

产品控制器 - 更新

<?php
class Products extends CI_Controller{
    public function __construct(){
        parent::__construct();
    }
    public function index(){
        //get all products
        $data['products'] = $this->Product_model->get_products();

        //load view
        $data['main_content'] = 'products';
        $this->load->view('layouts/main', $data);
    }
    public function details($id){
        //get product details from the model
        $data['product'] = $this->Product_model->get_product_details($id);

        //load view
        $data['main_content'] = 'details';
        $this->load->view('layouts/main', $data);
    }   
    public function addtocart(){
        // here you can collect submitted product values such as item_number, price, name

        echo '<pre>';
        print_r($_POST);        
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多