Add value to database

Asked

Viewed 256 times

2

I use Codeigniter, and the situation is as follows: The product has a current stock, and I want to input more items from this stock... how do we add the existing with the new entries? Follows code:

CONTROLLER:

 public function entrada(){
    $CI =& get_instance();
    if (esta_logado()):
        if(is_admin()):
            $this->form_validation->set_message('is_natural_no_zero', 'Escolha uma opção para o %s');
            $this->form_validation->set_rules('id_produto','PRODUTO','required|is_natural_no_zero');
            $this->form_validation->set_rules('estoque','ESTOQUE DE ENTRADA','required');
            $this->form_validation->set_rules('preco_compra','PREÇO DE COMPRA','required');
            if($this->form_validation->run()==TRUE):
                $dados['estoque_atual'] = $this->input->post('estoque');
                $dados['preco_compra'] = $this->input->post('preco_compra');
                $this->estoque->do_update($dados, array('id'=>$this->input->post('id_produto')));
            endif; 
            set_tema('conteudo', load_modulo('telas_estoque','entrada'));
            set_tema('footerinc', load_js(array('table')), FALSE);
            load_template();
        else:
             //set_msg('msgerro', 'Usuário não tem permissão','erro');
             redirect('home');
         endif;
    else:
        load_template();
    endif;  
}

MODEL:

 // Método -> Update item individual da estoque quando comprador
public function do_update($dados=NULL, $condicao=NULL, $redir=TRUE){
    if ($dados != NULL && is_array($condicao)):
        $this->db->update('produtos', $dados, $condicao);
        if ($this->db->affected_rows()>0):
            set_msg('msgok','Alteração efetuada com sucesso','sucesso');
        else:
            set_msg('msgerro','Erro ao atualizar dados','erro');
        endif;  
        if($redir) redirect(current_url());
    endif;
}

I want to add the stock value to the current stock_as I do?

Show 2 more comments

1 answer

2


Controller

$this->estoque->do_update($_POST, $this->input->post('id_produto'));

In the model:

public function do_update($dados=NULL, $id=NULL, $redir=TRUE){ 
    if ($dados != NULL && $id != NULL): 
        $this->db->where('id', $id); 
        $this->db->update('produtos', "estoque_atual = estoque_atual + '".$dados['estoque_atual']."'"); 

        if ($this->db->affected_rows()>0): 
            set_msg('msgok',print_r($dados),'sucesso'); 
        else: 
            set_msg('msgerro',print_r($id),'erro'); 
        endif; 

        if($redir) redirect(current_url()); 
    endif; 
}

Browser other questions tagged

You are not signed in. Login or sign up in order to post.