Jump to content

sol25lua

Members
  • Content count

    2
  • Joined

  • Last visited

Community Reputation

0 Comum

About sol25lua

  1. Este é o retorno que vem da aba network. O ID é numerico e existe na tabela. ele não recupera o id_categoria_animal e nem o id_porte do a animal para procurar na tabela valores, o valor referente ao serviço solicitado para aquele determinado tipo de animal. Essas informações elas já vem preenchidas quando em um ouro arquivo coloco o CPF do cliente e submeto a página, abre uma nova página com as informações do cliente. alem dessas informações quando o usuario selecionar o serviço que o cliente quer o valor aparecera.
  2. Preciso calcular o valor de um serviço de um projeto de petshop, onde é necessário informar os dados: id_porte (pequeno, médio, grande), id_categoria_animal (cachorro, gato), e qual o serviço(banho, tosa ou banho com tosa), pois os valores variam de acordo com o porte do animal, categoria e o serviço solicitado. porém as informações id_categoria_animal e id_porte ja vem preenchidas no formulario quando na pagina anterior é digitado o CPF do cliente, então quando é selecionado o serviço em um campo select, automaticamente o valor carrega, porém não esta dando certo e não encontrei o erro, estou utilizando o framework codeigniter. Este é o controller: Class Consulta_cpf extends CI_Controller{ function __construct(){ parent::__construct(); $this->load->helper('form'); $this->load->library('form_validation'); $this->load->model('cliente/dados_cliente', 'dados'); $this->load->helper('date'); } public function index(){ $this->form_validation->set_rules('cpf', 'CPF', 'required|trim|exact_length[11]|numeric'); //VERIFICA SE AS REGRAS COM O CPF DIGITADO FORAM EXECUTADAS. if($this->form_validation->run() == FALSE){ if(validation_errors()){ die('<p> <a href="'.base_url('agendar_servico').'"> Clique aqui </a> para voltar </p>'.validation_errors()); } } if(isset($_POST['acao']) && $_POST['acao'] == 'Pesquisar >>'){ $cpf = $this->input->post('cpf'); //VERIFICA SE O CPF DO CLIENTE EXISTE NO BANCO DE DADOS. try { $pessoa = $this->dados->select_nome_pessoa($cpf); } catch (Exception $e) { die('<p> <a href="'.base_url('agendar_servico').'"> Clique aqui </a> para voltar</p>'.$e->getMessage()); } $id_pessoa = $pessoa['id_pessoa']; $id_cliente = $this->dados->select_id_cliente($id_pessoa); $animal = $this->dados->select_animal($id_cliente); $dados['nome_cliente'] = $pessoa['nome_pessoa']; $dados['id_cliente'] = $this->dados->select_id_cliente($id_pessoa); $dados['id_animal'] = $animal['id_animal']; $dados['nome_animal'] = $animal['nome_animal']; $dados['id_cat_animal'] = $animal['id_cat_animal']; $dados['nome_cat_animal'] = $animal['nome_cat_animal']; $dados['id_porte'] = $animal['id_porte']; $dados['nome_porte'] = $animal['nome_porte']; $dados['idade'] = $this->dados->select_idade($animal['data_nasc_animal']); $dados['data'] = $this->dados->select_data(); $dados['servicos'] = $this->dados->select_servicos(); $dados['consulta_func'] = $this->dados->consulta_func(1); $dados['cpf'] = $this->input->post('cpf'); $this->load->view('cliente/agendar_servico', $dados); } } } Este é o model (Só a função que importa que neste caso é a consulta de valor) public function consulta_valor($id_servico, $id_cat_animal, $id_porte){ $options = "<option> Valores </option>"; $this->db->select('*'); $this->db->from('valores'); $this->db->where(array('id_servico' => $id_servico, 'id_cat_animal' => $id_cat_animal, 'id_porte' => $id_porte)); $query = $this->db->get(); if($query->num_rows() > 0){ foreach($query->result() as $linha){ $options .= "<option value='{$linha->id_valor}'> $linha->valor </option>"; } return $options; }else{ return false; } } Este é a função para o jquery executar, que esta dentro do controller/ajax <?php defined('BASEPATH') OR exit('No direct script access allowed'); Class Valor extends CI_controller{ function __construct(){ parent::__construct(); $this->load->model('cliente/dados_cliente', 'dados_cliente'); } public function get_valor(){ $id_servico = $this->input->post('id_servico'); $id_cat_animal = $this->input->post('id_cat_animal'); $id_porte = $this->input->post('id_porte'); sleep(1); echo $this->dados_cliente->ff($id_servico, $id_cat_animal, $id_porte); } } Esta é a função do header com o jquery. $(function(){ $('#servico').change(function(){ $('#valor').attr('disabled', 'disabled'); $('#valor').html("<option> Carregando... </option>"); var id_servico = $('#servico').val(); $.post(base_url+'index.php/ajax/valor/get_valor',{ id_servico : id_servico }, function(data){ $('#valor').html(data); $('#valor').removeAttr('disabled'); }); }); }); E por fim esta é a view(bom apenas uma parte dela) echo form_label('Serviços: '); echo ""; echo $servicos; echo ""; echo form_label('Valor: ', 'valor'); echo "<select id='valor' name='valor' disabled=''>"; echo "<option>valor</option>"; echo "</select>";
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.