Ir ao conteúdo
  • Cadastre-se

PHP Campo select retornando valor de produto cadastrado


Posts recomendados

Bom dia.

Estou editando um template do mapos para cadastrar produtos que serão solicitados por loja. Fazemos previamente o cadastro do produto no sistema, inserindo a quantidade e as demais informações e preciso que na tela de pedidos, funcione um campo select puxando os produtos já cadastrados, sem ter que inserir na linha de código manualmente.

Já vi algumas coisas no youtube mas por enquanto nada deu certo, se alguém conseguir me ajudar ou tentar, eu agradeço.

 

Vou deixar algumas imagens abaixo do código e das telas para se ter uma noção.

Obrigado desde já!

 

 

 

image.png

image.png

image.png

image.png

 

 

vou deixar o código da página por escrito para ficar melhor.


 

<link rel="stylesheet" href="<?php echo base_url(); ?>assets/js/jquery-ui/css/smoothness/jquery-ui-1.9.2.custom.css" />
<script type="text/javascript" src="<?php echo base_url() ?>assets/js/jquery-ui/js/jquery-ui-1.9.2.custom.js"></script>
<script type="text/javascript" src="<?php echo base_url() ?>assets/js/jquery.validate.js"></script>
<link rel="stylesheet" href="<?php echo base_url() ?>assets/trumbowyg/ui/trumbowyg.css">
<script type="text/javascript" src="<?php echo base_url() ?>assets/trumbowyg/trumbowyg.js"></script>
<script type="text/javascript" src="<?php echo base_url() ?>assets/trumbowyg/langs/pt_br.js"></script>

<div class="row-fluid" style="margin-top:0">
    <div class="span12">
        <div class="widget-box">
            <div class="widget-title" style="margin: -20px 0 0">
                <span class="icon">
                    <i class="faz fa-wrench"></i>
                </span>
                <h5>Registrar solicitação</h5>
            </div>
            <div class="widget-content nopadding tab-content">
                <div class="span12" id="divProdutosServicos" style=" margin-left: 0">
                    <ul class="nav nav-tabs">
                        <li class="active" id="tabDetalhes"><a href="#tab1" data-toggle="tab">Detalhes do Pedido</a></li>
                    </ul>
            <div class="widget-content nopadding tab-content">
                <?php echo $custom_error; ?>
                <form action="<?php echo current_url(); ?>" id="formServico" method="post" class="form-horizontal">
                
                    <div class="control-group">
                        <label for="nome" class="control-label">Usuário<span class="required"></span></label>
                        <div class="controls">
                            <input id="cliente" type="text" name="cliente" disabled="" value="<?= $this->session->userdata('nome'); ?>" />
                        </div>
                    </div>

                    <div class="control-group">
                        <label for="nome" class="control-label">Solicitante<span class="required">*</span></label>
                        <div class="controls">
                            <input id="nome" type="text" name="nome" value="<?php echo set_value('nome'); ?>" />
                        </div>
                    </div>
                    
                    <div class="control-group">
                       <label for="dataInicial" class="control-label"><span class="required">Data da solicitação</span></label>
                       <div class="controls">
                            <input id="dataInicial" autocomplete="off" type="text" name="dataInicial" disabled="" value="<?php echo date('d/m/Y'); ?>" />
                       </div>    
                    </div>
                 
        <!--        <div class="span12" style="padding: 1%">
                        <div class="span6">
                            <label for="cliente">Cliente<span class="required">*</span></label>                                        
                            <input id="cliente" class="span12" type="text" name="cliente" disabled="" value="<?= $this->session->userdata('nome'); ?>" />
                            <input id="clientes_id" class="span12" type="hidden" name="clientes_id" value="" />
                    </div> -->
                
        <!--         <div class="control-group">
                        <label for="preco" class="control-label"><span class="required">Preço*</span></label>
                        <div class="controls">
                            <input id="preco" class="money" data-affixes-stay="true" data-thousands="" data-decimal="." type="text" name="preco" value="<?php echo set_value('preco'); ?>" />
                        </div>
                    </div> -->
                 <!--   <div class="control-group">
                        <label for="descricao" class="control-label">Produto<span class="required">*</span></label>
                        <div class="controls">
                            <input id="descricao" type="text" name="descricao" value="<?php echo set_value('descricao'); ?>" />
                        </div>
                    </div> -->
                
                    <div class="control-group">
                        <label for="status" class="control-label">Produtos<span class="required">*</span></label>
                        <div class="controls">
                    <!--    <input id="descricao" type="text" name="descricao" value="<?php echo set_value('descricao'); ?>" /> -->
                            <select id="descricao" type="text" name="descricao" value="<?php echo set_value('descricao'); ?>sasad </select>
                        <select name="status" id="status" value="">
                            <option value="">Teclado</option>
                            <option value="">Mouse</option>
                            <option value="">Leitor de código de barras</option>
                            <option value="">Monitor</option>
                            <option value="">Computador</option>
                            </select>  
                        </div>
                    </div>        

                
           <!--         <div class="control-group">
                        <label for="observacoes">
                        <div class="span6" style="padding: 1%; margin-left: 0">
                            <h4>Observações</h4>
                        </label>
                             <textarea class="editor" name="observacoes" id="observacoes" cols="30" rows="5"></textarea>
                        </div>
                    </div> -->
                    
                    <div class="form-actions">
                        <div class="span12">
                            <div class="span6 offset3" style="display:flex;justify-content: center">
                                <button type="submit" class="button btn btn-mini btn-success" style="max-width: 160px">
                                  <span class="button__icon"><i class='bx bx-plus-circle'></i></span><span class="button__text2">Adicionar</span></a></button>
                                <a href="<?php echo base_url() ?>index.php/servicos" id="btnAdicionar" class="button btn btn-mini btn-warning" style="max-width: 160px">
                                  <span class="button__icon"><i class="bx bx-undo"></i></span><span class="button__text2">Voltar</span></a>
                            </div>
                        </div>
                    </div>
                </form>
            </div>
        </div>
        </div>
    </div>
</div>
<script src="<?php echo base_url() ?>assets/js/jquery.validate.js"></script>
<script src="<?php echo base_url(); ?>assets/js/maskmoney.js"></script>
<script type="text/javascript">
    $(document).ready(function() {
        $(".money").maskMoney();
        $('#formServico').validate({
            rules: {
                nome: {
                    required: true
                },
                preco: {
                    required: true
                }
            },
            messages: {
                nome: {
                    required: 'Campo Requerido.'
                },
                preco: {
                    required: 'Campo Requerido.'
                }
            },
            errorClass: "help-inline",
            errorElement: "span",
            highlight: function(element, errorClass, validClass) {
                $(element).parents('.control-group').addClass('error');
            },
            unhighlight: function(element, errorClass, validClass) {
                $(element).parents('.control-group').removeClass('error');
                $(element).parents('.control-group').addClass('success');
            }
        });
    });
</script>

 

Link para o comentário
Compartilhar em outros sites

Então, eu tenho pouca experiência com programação e não consegui identificar se tem framework.

Não sei como poderia fazer para te mostrar, só se eu te enviar o site zipado para ver os códigos.

@MailingTester

Vê se o que você me perguntou seria essa parte do código!

 

<?php if (!defined('BASEPATH')) {
    exit('No direct script access allowed');
}

class Servicos extends MY_Controller
{


    public function __construct()
    {
        parent::__construct();

        $this->load->helper('form');
        $this->load->model('servicos_model');
        $this->data['menuServicos'] = 'Serviços';
    }

    public function index()
    {
        $this->gerenciar();
    }

    public function gerenciar()
    {
        if (!$this->permission->checkPermission($this->session->userdata('permissao'), 'vServico')) {
            $this->session->set_flashdata('error', 'Você não tem permissão para visualizar serviços.');
            redirect(base_url());
        }

        $this->load->library('pagination');

        $this->data['configuration']['base_url'] = site_url('servicos/gerenciar/');
        $this->data['configuration']['total_rows'] = $this->servicos_model->count('servicos');

        $this->pagination->initialize($this->data['configuration']);

        $this->data['results'] = $this->servicos_model->get('servicos', '*', '', $this->data['configuration']['per_page'], $this->uri->segment(3));

        $this->data['view'] = 'servicos/servicos';
        return $this->layout();
    }

    public function adicionar()
    {
        if (!$this->permission->checkPermission($this->session->userdata('permissao'), 'aServico')) {
            $this->session->set_flashdata('error', 'Você não tem permissão para adicionar serviços.');
            redirect(base_url());
        }

        $this->load->library('form_validation');
        $this->data['custom_error'] = '';

        if ($this->form_validation->run('servicos') == false) {
            $this->data['custom_error'] = (validation_errors() ? '<div class="form_error">' . validation_errors() . '</div>' : false);
        } else {
            $preco = $this->input->post('preco');
            $preco = str_replace(",", "", $preco);

            $data = [
                'nome' => set_value('nome'),
                'descricao' => set_value('descricao'),
                'preco' => $preco,
            ];

            if ($this->servicos_model->add('servicos', $data) == true) {
                $this->session->set_flashdata('success', 'Serviço adicionado com sucesso!');
                log_info('Adicionou um serviço');
                redirect(site_url('servicos/adicionar/'));
            } else {
                $this->data['custom_error'] = '<div class="form_error"><p>Ocorreu um erro.</p></div>';
            }
        }
        $this->data['view'] = 'servicos/adicionarServico';
        return $this->layout();
    }

    public function editar()
    {
        if (!$this->permission->checkPermission($this->session->userdata('permissao'), 'eServico')) {
            $this->session->set_flashdata('error', 'Você não tem permissão para editar serviços.');
            redirect(base_url());
        }
        $this->load->library('form_validation');
        $this->data['custom_error'] = '';

        if ($this->form_validation->run('servicos') == false) {
            $this->data['custom_error'] = (validation_errors() ? '<div class="form_error">' . validation_errors() . '</div>' : false);
        } else {
            $preco = $this->input->post('preco');
            $preco = str_replace(",", "", $preco);
            $data = [
                'nome' => $this->input->post('nome'),
                'descricao' => $this->input->post('descricao'),
                'preco' => $preco,
            ];

            if ($this->servicos_model->edit('servicos', $data, 'idServicos', $this->input->post('idServicos')) == true) {
                $this->session->set_flashdata('success', 'Serviço editado com sucesso!');
                log_info('Alterou um serviço. ID: ' . $this->input->post('idServicos'));
                redirect(site_url('servicos/editar/') . $this->input->post('idServicos'));
            } else {
                $this->data['custom_error'] = '<div class="form_error"><p>Ocorreu um errro.</p></div>';
            }
        }

        $this->data['result'] = $this->servicos_model->getById($this->uri->segment(3));

        $this->data['view'] = 'servicos/editarServico';
        return $this->layout();
    }

    public function excluir()
    {
        if (!$this->permission->checkPermission($this->session->userdata('permissao'), 'dServico')) {
            $this->session->set_flashdata('error', 'Você não tem permissão para excluir serviços.');
            redirect(base_url());
        }

        $id = $this->input->post('id');
        if ($id == null) {
            $this->session->set_flashdata('error', 'Erro ao tentar excluir serviço.');
            redirect(site_url('servicos/gerenciar/'));
        }

        $this->servicos_model->delete('servicos_os', 'servicos_id', $id);
        $this->servicos_model->delete('servicos', 'idServicos', $id);

        log_info('Removeu um serviço. ID: ' . $id);

        $this->session->set_flashdata('success', 'Serviço excluido com sucesso!');
        redirect(site_url('servicos/gerenciar/'));
    }
}


 

Link para o comentário
Compartilhar em outros sites

17 horas atrás, ramostriker disse:

Obrigado pela sugestão, estava até dando uma analisada sobre como funciona mas ainda não consegui chegar a conclusão de como posso puxar a informação do nome do usuário e o sistema me trazer como o nome do pedinte.

Esquece essa parte, estou vendo duas coisas ao mesmo tempo e misturei no post.

 

Estou tentando também trazer informação do usuário que faz uma solicitação da compra para mostrar como nome na minha view, porém só consigo puxar o id mas não consigo converter em nome.

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!