lodas
(Zybov M)
1
Здравствуйте. Решил попользоваться этим прекрасным компонентом корзины.
Для модели товаров расширил интерфейс:
class Product extends CActiveRecord implements IECartPosition //реализую интерфейс IECartPosition
{
//для корзины реализуем интерфейс
function getId(){
return 'Book'.$this->id_tov;
}
function getPrice(){
return $this->price;
}
public static function model($className=__CLASS__)
{
return parent::model($className);
}
При добавлении товара в корзину когда я ложу полученный мной идентификатор товара:
$id=Yii::app()->request->getPost('id_tov');
$backend= Product::model()->findByPk($id);
Происходит ошибка:
Что это может быть и как это лечится?
Product::model()->findByPk($id) возвращает null, т. е. запись просто не найдена.
Дашье надо уже смотреть, почему так. Скорее всего, где-то с id перемудрили.
lodas
(Zybov M)
3
Orey , я проверил запрос в базу проходит отлично: возращает "ОК"
//получаем id_tov
$temps=$my_array[id_tov];
//на всякий случай проверяем пришел ли он
if(!empty($temps))
{
//если пришел делаем запрос в базу
$backend= Product::model()->findByPk($temps);
//и проверяем ответ
if($backend==null) $backend="Eror"; else
{
$backend="Ok";
//Yii::app()->shoppingCart->put($backend);
}
}
Но все равно как только расскоменчиваю
Yii::app()->shoppingCart->put($backend);
Происходит эта ошибка
Неужели никто не сталкивался? Как это лечиться?
ineersa
(Ineersa)
4
У вас же теперь написано string given. Вы вместо обьекта строку кормите.
Подозреваю что вы оставили
$backend="Ok";//тут
//Yii::app()->shoppingCart->put($backend);
И еще 1
if($backend===null)
, так немного правильнее.
rodriguez
(Piratdrake)
5
//Yii::app()->shoppingCart->put($backend);
Подскажите, в данном коде "shoppingCart->" - это таблица корзины в БД?