public function collect() { $result_array = array(); $item_id = $_REQUEST["id"]; $type = $_REQUEST["type"]; //对于不是店铺的收藏,需要记录其价格 switch ($type) { case '1': $ItemModel = new \Home\Model\GoodModel(); break; case '2': break; case '3': $ItemModel = new \Home\Model\SeckillGoodModel(); break; case '4': $ItemModel = new \Home\Model\TeamGoodsModel(); break; case '5': $ItemModel = new \Home\Model\TrialGoodsModel(); break; case '6': $ItemModel = new \Home\Model\BookGoodsModel(); break; default: break; } if ($type != 2) { $price = $ItemModel->get_price($item_id); } else { $price = 0; } if (!$type or !$item_id) { //if wrong data $result_array["status"] = 4; echo json_encode($result_array); return; } $user_id = $this->check_user(); if ($user_id) { $CollectionModel = new \Home\Model\CollectionModel(); $status = $CollectionModel->save_item($user_id, $type, $item_id, $price); if ($status == 0) { $result_array["status"] = 2; } elseif ($status == 1) { $result_array["status"] = 1; } else { $result_array["status"] = 3; } } else { //用户未登录,直接返回 $result_array["status"] = 0; } $result_array["msg"] = "返回 status 0 用户未登录 1 成功 2 sql出现未知错误 3 已经存在相同收藏"; echo json_encode($result_array); }