Проблем с CodeIgniter

Dizasterr

Registered
Здравейте! Имам проблем с един код за количка за пазаруване. Дава ми грешка на първия ред на страницата като изписва, че немога да използвам
Код:
$this
, когато не е обект. Ето къде е грешката и самата грешка:
Код:
<?php if(!$this->cart->contents()):
	echo 'You don\'t have any items yet.';
else:
?>
Грешката:
Код:
A PHP Error was encountered

Severity: Notice

Message: Undefined property: CI_Loader::$cart

Filename: cart/cart.php

Line Number: 1

Fatal error: Call to a member function contents() on a non-object in D:\xampp\htdocs\onlineshop\application\views\cart\cart.php on line 1
Благодаря ви предварително. Все още се уча на CodeIgniter.
 
Най-вероятно си забравил да заредиш библиотеката. В контролера или във view-то напиши:

$this->load->library('cart');

Най-добре е да го сложиш в конструктора на контролера, защото ще трябва за всички методи най-вероятно.
 
adrian каза:
Най-вероятно си забравил да заредиш библиотеката. В контролера или във view-то напиши:

$this->load->library('cart');

Най-добре е да го сложиш в конструктора на контролера, защото ще трябва за всички методи най-вероятно.
Благодаря много. Имам само още един въпрос: В единия файл трябва да напиша url до приложението с index.php като променлива, която после се използва, но не го разбирам как трябва да е. Дали трябва да е /myfolder/index.php/, или http://localhost/myfolder/index.php/, а може би и нещо друго. За пример е дадено:
Код:
CodeIgniter_Shopping_Cart/demo/index.php/p/
.
 
Не съм много убеден, че разбрах какво точно искаш.

По принцип можеш да ползваш константите от CodeIgniter:
за пълния път до index.php - FCPATH
за пълния път до system - BASEPATH
за пълния път до application - APPPATH

Ако съм те разбрал правилно ти трябва FCPATH ;)
 
Гледам един урок и работя по него, но като натисна Add бутона(за добавяне в количката без презареждане) не прави нищо. Тоест не работи. Бия си главата с това от няколко часа и немога да го измисля. Ето кода, който отговаря за прехвърлянето:
Код:
$(document).ready(function() {

    var link = 'url - то, което трябва да напиша';

    $("ul.products form").submit(function() {

        var id = $(this).find('input[name=id]').val();
        var qty = $(this).find('input[name=quantity]').val();
        

            $.post(link + "cart/add_cart_item", {

                id: id,
                quantity: qty,
                ajax: '1'

            }, function(data) {


                
            })

        return false;
        
    });

});
 
Да, знам кой урок гледаш :) Остави го така:

$(document).ready(function() {

var link = '/myfolder/index.php/';

$("ul.products form").submit(function() {

var id = $(this).find('input[name=id]').val();
var qty = $(this).find('input[name=quantity]').val();


$.post(link + "cart/add_cart_item", {

id: id,
quantity: qty,
ajax: '1'

}, function(data) {



})

return false;

});

});

Това при положение, че проекта ти се намира в htdocs/myfolder/index.php

и че контролера ти се казва cart и метода add_cart_item :)

В същия сайт, в който си видял този урок има една много хубава поредица: CodeIgniter From Scratch, започната от Jeffrey Wey и довършена от Burak Guzel. Силно ти я препоръчвам :) Като мисля, че Burak имаше в един урок количка за пазаруване значително по-опростена от тази която ти си намерил. :)
 
adrian каза:
Да, знам кой урок гледаш :) Остави го така:

$(document).ready(function() {

var link = '/myfolder/index.php/';

$("ul.products form").submit(function() {

var id = $(this).find('input[name=id]').val();
var qty = $(this).find('input[name=quantity]').val();


$.post(link + "cart/add_cart_item", {

id: id,
quantity: qty,
ajax: '1'

}, function(data) {



})

return false;

});

});

Това при положение, че проекта ти се намира в htdocs/myfolder/index.php

и че контролера ти се казва cart и метода add_cart_item :)

В същия сайт, в който си видял този урок има една много хубава поредица: CodeIgniter From Scratch, започната от Jeffrey Wey и довършена от Burak Guzel. Силно ти я препоръчвам :) Като мисля, че Burak имаше в един урок количка за пазаруване значително по-опростена от тази която ти си намерил. :)
Отново благодаря +1. :?:
 

Back
Горе