为了账号安全,请及时绑定邮箱和手机立即绑定

如何在codeigniter上更新或插入新数据

如何在codeigniter上更新或插入新数据

PHP
慕的地8271018 2021-11-13 16:48:03
我正在我的服务器上设置一个 rest-API,我想更新一个表(即“comp_holding_stock”)。但每次我测试发布新数据时,它都会返回“未找到项目”这是我的控制器   public function create_comp_holding_stock(){   $returnArr['status'] = '0';   $returnArr['response'] = '';   try {       if (!$this->input->post()) {           $returnArr['response'] = "Only POST method is allowed";       } else {           $holding_stock_data = array(               'comp_id' => $this->input->post('comp_id'),               'customer_id' => $this->input->post('customer_id'),               'quantity' => $this->input->post('quantity'),               'date' => date('Y-m-d H:i:s')           );           if (!isset($holding_stock_data)) {            $returnArr['response'] = "Some Parameters are missing";        } else {            $customer = $this->Customer->save_holding_stock($holding_stock_data);            if (!$customer) {                $returnArr['response'] = 'No items found';            } else {                $returnArr['status'] = '1';                $returnArr['response'] =  $customer;            }        }    }} catch (Exception $ex) {    $returnArr['response'] = "Error in connection";    $returnArr['error'] = $ex->getMessage();}$response = json_encode($returnArr, JSON_PRETTY_PRINT);echo $response;}下面是我的模型  public function save_holding_stock($holding_stock_data){    // $this->db->trans_start();    $success = $this->db->insert('comp_holding_stock', $holding_stock_data); return $success;;}我究竟做错了什么?这种情况的最佳方法是什么
查看完整描述

2 回答

?
饮歌长啸

TA贡献1951条经验 获得超3个赞

在您的代码中尝试这些更改


在您的控制器中,


$customer      =   $this->Customer->save_holding_stock($holding_stock_data);

$save_status    =   $this->db->affected_rows();

if ($save_status>0) {

                $returnArr['status'] = '1';

                $returnArr['response'] =  $customer;


            } else {

                $returnArr['response'] = 'No items found';

            }

在你的模型中,


public function save_holding_stock($holding_stock_data)

{

    // $this->db->trans_start();


     $this->db->insert('comp_holding_stock', $holding_stock_data);


}


查看完整回答
反对 回复 2021-11-13
?
明月笑刀无情

TA贡献1828条经验 获得超4个赞

我建议尝试检查您的控制器中是否有负载模型。在你的模型中尝试这样做。


public function save_holding_stock($holding_stock_data, $comp_id=FALSE)

{


    if(!$comp_id == -1 || !$this->exists($comp_id))

    {

        if($this->db->insert('comp_holding_stock', $holding_stock_data))

        {

            $holding_stock_data['comp_id'] = $this->db->insert_id();


            return TRUE;

        }


        return FALSE;

    }


    $this->db->where('comp_id', $comp_id);


    return $this->db->update('comp_holding_stock', $holding_stock_data);

}


查看完整回答
反对 回复 2021-11-13
  • 2 回答
  • 0 关注
  • 141 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号