Jump to content
Lucas Pedro Lopes Corrêa

Exibição condicional em formulário de consulta

Recommended Posts

Bom dia pessoal, preciso de ajuda com um código que comecei a modificar. 

Tenho uma pagina que exibe um formulário de consulta, e nesse formulário existem apenas duas funções, que são:

Consultar por nota de entrega e consultar por protocolo. 

 

Eu gostaria que quando o usuário setar a função de consulta por protocolo, apareça apenas a caixa do numero do protocolo, e que quando o usuário setar a caixa da nota de entrega apareça a caixa de talão e de numero de nota de entrega.

 

O código da pagina de resultados é esse aqui:

function page_render_upload() {
    global $wpdb;

    if ($_POST) {
        if (!function_exists('wp_handle_upload')) {
            require_once( ABSPATH . 'wp-admin/includes/file.php' );
        }

        $uploadedfile = $_FILES['cf-file'];
        $upload_overrides = array('test_form' => false);


        $movefile = wp_handle_upload($uploadedfile, $upload_overrides);

        if ($movefile && !isset($movefile['error'])) {

            $arquivo = $movefile['file'];

            $file = fopen($arquivo, 'r');
            $linha_atual = 0;
            $insert_ok = 0;
            $insert_erro = 0;

            while (($line = fgetcsv($file)) !== FALSE) {

                if ($linha_atual > 0) {

                    $dados = $line[0];
                    $dados_exp = explode(";", $dados);

                    $NUMERO_PROTOCOLO = $dados_exp[0];
                    $TALAO_NOTA = $dados_exp[1];
                    $NUMERO_NOTA = $dados_exp[2];
                    $DESCRICAO_SERVICO = htmlentities($dados_exp[3]);
                    $DESCRICAO_SITUACAO = htmlentities($dados_exp[4]);
                    $DATA_SITUACAO = $dados_exp[5];
                    $HORA_SITUACAO = $dados_exp[6];
                    $DATA_SOLICITACAO = $dados_exp[7];
                    $HORA_SOLICITACAO = $dados_exp[8];
                    $NOME_SOLICITANTE = htmlentities($dados_exp[9]);
                    $EMAIL_SOLICITANTE = $dados_exp[10];
                    $TELEFONE_SOLICITANTE = htmlentities($dados_exp[11]);
                    $CODIGO_VALIDADOR = htmlentities($dados_exp[12]);

                    $sql = $wpdb->query("INSERT INTO {$wpdb->prefix}consulta_dado VALUES (NULL, "
                            . "'$NUMERO_PROTOCOLO', "
                            . "'$TALAO_NOTA',"
                            . "'$NUMERO_NOTA',"
                            . "'$DESCRICAO_SERVICO',"
                            . "'$DESCRICAO_SITUACAO',"
                            . "'$DATA_SITUACAO',"
                            . "'$HORA_SITUACAO',"
                            . "'$DATA_SOLICITACAO',"
                            . "'$HORA_SOLICITACAO',"
                            . "'$NOME_SOLICITANTE',"
                            . "'$EMAIL_SOLICITANTE',"
                            . "'$TELEFONE_SOLICITANTE',"
                            . "'$CODIGO_VALIDADOR')");
                    if ($sql == 1) {
                        $insert_ok++;
                    } else {
                        $insert_erro++;
                    }
                }
                $linha_atual = $linha_atual + 1;
            }
            fclose($file);
            echo '
            <div id="lost-connection-notice" class="error">
                <p>Resultado da importação.<br>	
                    <span class="hide-if-no-sessionstorage">
                        <b>Sucesso:</b> ' . $insert_ok . '<br>
                        <b>Erro:</b> ' . $insert_erro . '
                    </span>
                </p>
            </div>';
        } else {
            echo '
            <div id="lost-connection-notice" class="error">
                <p>Resultado da importação.<br>	
                    <span class="hide-if-no-sessionstorage">
                        ' . $movefile['error'] . '
                    </span>
                </p>
            </div>';
        }
        @unlink($arquivo);
    }

    echo '<div class="wrap">
            <h1 class="wp-heading-inline">Cadastrar resultados de consultas</h1>
            <hr class="wp-header-end">
            <form id="upload_resume_form" action="' . esc_url($_SERVER['REQUEST_URI']) . '" method="post" enctype="multipart/form-data">
                <div id="poststuff">
                    <div id="post-body" class="metabox-holder columns-1">
                        <div id="post-body-content">
                            <div id="titlediv">
                                <div id="titlewrap">
                                    <label for="title"><h3>Selecione o arquivo</h3></label>
                                    <input required type="file" name="cf-file" size="40" accept=".txt"/>
                                </div>
                            </div>
                        <div><input type="submit" name="cf-submitted" value="Enviar" class="button button-primary button-large"></div>
                    </div>
                </div>
            </form>
        </div>';
}

function page_resultado() {
    global $wpdb;

    echo '<div class="row">
            <div class="col-sm-12">';
    echo '<form id="upload_resume_form" action="' . esc_url($_SERVER['REQUEST_URI']) . '" method="post">
                <div class="form-group">                
                        <label for="por">Consultar por</label>
                        <br>
                        <span class="wpcf7-form-control-wrap por">
                            <select name="por" id="por" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required input-lg form-control" aria-required="true" aria-invalid="false" required>
                                <option value="" selected>Selecione</option>
                                <option value="protocolo">Número do Protocolo</option>
                                <option value="notadeentrega">Número da Nota de Entrega</option>
                            </select>
                        </span>
                        <br>
                        <span class="help-block"></span>
                </div>
                <div class="form-group">                
                        <label for="talao_nota">Informe o Talão da Nota: "C", "N" ou "A"</label>
                        <br>
                        <span class="wpcf7-form-control-wrap talao_nota">
                            <input type="text" name="talao_nota" id="talao_nota" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required input-lg form-control" aria-required="true" aria-invalid="false" />
                        </span>
                        <br>
                        <span class="help-block"></span>
                </div>
                <div class="form-group">                
                        <label for="consulta">Informe o Número</label>
                        <br>
                        <span class="wpcf7-form-control-wrap consulta">
                            <input required type="text" name="consulta" id="consulta" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required input-lg form-control" aria-required="true" aria-invalid="false" />
                        </span>
                        <br>
                        <span class="help-block"></span>
                </div>
                <div class="form-group">   
                    <div class="col-sm-12">
                        <input type="submit" name="cf-submitted" value="Consultar" class="wpcf7-form-control wpcf7-submit btn btn-lg btn-primary">
                    </div>
                </div>
            </form>';

    if ($_POST) {

        if (empty($_POST['por'])) {
            exit;
        }

        if ($_POST['por'] == 'protocolo') {
            $where = " NUMERO_PROTOCOLO = '" . $_POST['consulta'] . "' ";
        } else {
            $where = " NUMERO_NOTA = '" . $_POST['consulta'] . "' ";
        }

        if (isset($_POST['talao_nota']) && $_POST['talao_nota'] != '') {
            $where .= " AND TALAO_NOTA = '" . $_POST['talao_nota'] . "' ";
        }

        $sql = $wpdb->get_results("SELECT * FROM {$wpdb->prefix}consulta_dado WHERE $where ORDER BY ID DESC LIMIT 1");

        echo '<div class="row">
                <div class="col-sm-12">
                <h4 class="wp-heading-inline">Resultado</h4>
                <p>';
        $total = count($sql);
        if ($total == 1) {
            foreach ($sql as $row) {

                /*
                 * Alterar nome dos serviços
                 */
                $servico = "Não informado";
                if ($row->DESCRICAO_SERVICO != '' || $row->DESCRICAO_SERVICO != null) {
                    if ($row->DESCRICAO_SERVICO == 'CRC') {
                        $servico = "CRC";
                    } else if ($row->DESCRICAO_SERVICO == 'Certidao') {
                        $servico = "Certidão";
                    } else if ($row->DESCRICAO_SERVICO == 'Pessoas Juridicas') {
                        $servico = "Pessoas Jurídicas";
                    } else if ($row->DESCRICAO_SERVICO == 'Titulos e Documento') {
                        $servico = "Títulos e Documento";
                    } else if ($row->DESCRICAO_SERVICO == 'Registro Especial') {
                        $servico = "Registros Especiais (Livro E)";
                    } else if ($row->DESCRICAO_SERVICO == 'Apostilamento') {
                        $servico = "Apostilamento";
                    }
                }

				if ($row->NOME_SOLICITANTE != '' || $row->NOME_SOLICITANTE != null)
                    echo '<b>Solicitante:</b> ' . $row->NOME_SOLICITANTE . '<br>';
                if ($row->DESCRICAO_SERVICO != '' || $row->DESCRICAO_SERVICO != null)
                    echo '<b>Serviço:</b> ' . $servico . '<br>';
                if ($row->NUMERO_NOTA > 0 || $row->NUMERO_NOTA != null)
                    echo '<b>Número da nota de entrega:</b> ' . $row->NUMERO_NOTA . '<br>';
                if ($row->NUMERO_PROTOCOLO > 0 || $row->NUMERO_PROTOCOLO != null)
                    echo '<b>Número do protocolo:</b> ' . $row->NUMERO_PROTOCOLO . '<br>';
				if ($row->DATA_SOLICITACAO != '' || $row->DATA_SOLICITACAO != null)
                    echo '<b>Data da Solicitação:</b> ' . $row->DATA_SOLICITACAO . '<br>';
                if ($row->DESCRICAO_SITUACAO != '' || $row->DESCRICAO_SITUACAO != null)
                    echo '<b>Situação:</b> ' . $row->DESCRICAO_SITUACAO . '<br>';
                if ($row->DATA_SITUACAO != '' || $row->DATA_SITUACAO != null)
                    echo '<b>Data da ultima atualização:</b> ' . $row->DATA_SITUACAO . '<br>';
				if ($row->HORA_SITUACAO != '' || $row->HORA_SITUACAO != null)
                    echo '<b>Horário da ultima atualização:</b> ' . $row->HORA_SITUACAO . '<br>';
            }
        }else {
            echo "Nenhum resultado localizado.";
        }
    }
    echo '</p></div></div>';
    echo '</div>
        </div>';
}

add_shortcode('consulta_lista', 'page_resultado');

Caso saibam aonde estou errando, gostaria que me falassem.

 

Esse é meu primeiro post aqui no fórum, espero que tenha feito certo. Obrigado!

 

 

 

 

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By samuel.huarachi
      Como o sistema da Yellow funciona?
      Como uma requisição no celular, destrava um patinete?

      Tem algum artigo na internet falando disso?
    • By geivisonsales
      Tenho um site sobre conteudos de entretenimento, e todos os posts tem uma imagem de fundo do tmdb, tem alguma maneira de otimizar o carregamento dessas imagens por url? ou alguma outra maneira?
    • By Salvatore
      Então, eu estou gravando uns dados no bancos de dados usando text area, mas quando eu dou espaço ou algo do tipo fica assim
       
      Ex :aaaa\r\naaaaaa\r\n
       
      onde esses \r\n são espaços e outras coisas, e ficam sendo exibidos quando eles retorna para a pagina
      alguém sabe como resolvo isso?
    • By violin101
      Caros amigos, saudações...
       
      Estou usando Codeigniter e estou com uma pequena dúvida.
       
      Tenho um Form com os seguintes campos:
      Data Início..... <input type="date" /> Hora Início.... <input type="time" /> Data Final..... <input type="date" /> Hora Final.... <input type="time" /> até aqui tudo bem
       
      Gostaria de fazer uma VERIFICAÇÃO para impedir que o usuário GRAVE no MySql uma data menor que a data atual.
      ou seja:
      Data Início nunca poderá ser menor que a Data Atual.
      e a
      Data Final só poder ser igual ou maior que a Data Início.
       
      Grato,
       
      Cesar
       
×

Important Information

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