Ir para conteúdo
rcamu

Habilitar ou Desabilitar determinada função.

Recommended Posts

Pessoal, bom dia,

 

Tenho uma tela de consulta de pedidos e nessa tela pode fazer alterações no pedido, cancelar,  imprimir etc.

 

Como posso fazer com que essa funções só fique ativa se determinado campo da tabela estiver preenchido?

 

Exemplo:

Se o pedido estiver marcado que já foi separado o link para fazer alteração no pedido fica inativo, esse link só ficaria ativo se o pedido ainda não tiver sido separado.

 

No relatório uso  assim: 

 

</td><td align='center'><a href='manutencaopedido.php?id=$id'> Alterar"

 

Minha consulta está assim:

 

SELECT date_format(dtConcat2, '%d/%m/%Y') as data2, m.dtConcat2, c.nome cliente, m.total, m.descricao, d.nome_vendedor vendedor, m.id, m.exportado, m.transporte, e.tipo_entrega
FROM lc_controle m, clientes c, vendedor d, entrega e
WHERE m.tipo =4
AND m.exportado ='Não'
AND m.clienteAt = c.id
AND m.vendedor = d.id
AND m.transporte = e.id
ORDER BY dtConcat2 desc

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Precisa fazer uma consulta no carregamento da página, verificando se tal campo foi preenchido, caso não, desabilita o botão. Crie uma função para isso, pegue o retorno e valide ela.

 

Se for uma aplicação SPA por exemplo, pode usar Ajax para ficar verificando a todo instante.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá  rcamu

 

Saudações...

 

Partindo do princípio que acredito que na sua Base de Dados deve ter um campo na sua tabela para STATUS, por exemplo:

 

Tabela -> produto

campos - id

campos - nome

campos - status

 

Você deve fazer uma busca em sua tabela e filtrar pelo o Campo STATUS no caso, um exemplo usando PDO:

             <?php

                  //Paginação da página
                  $pag = isset($_GET['pag']) ? (int)$_GET['pag']  : 1;

                  $maximo = '10'; //RESULTADOS POR PÁGINA
                  $inicio = ($pag * $maximo) - $maximo; 

                     $sql_pegaAtivos = "SELECT * FROM cotacao WHERE clientes_clienteId = '$user_clienteId'
                                             ORDER BY cotaNumero DESC LIMIT ".$inicio.','.$maximo;
                              
                     try{
                       $query_pegaAtivos = $conecta->prepare($sql_pegaAtivos);
                       $query_pegaAtivos->bindValue(':clientes_clienteId',$user_clienteId,PDO::PARAM_STR);
                       $query_pegaAtivos->execute();
                       
                       $resultado_pegaAtivos = $query_pegaAtivos->fetchAll(PDO::FETCH_ASSOC);
                       $count_pegaAtivos = $query_pegaAtivos->rowCount(PDO::FETCH_ASSOC);

                       }catch(PDOexception $error_pegaAtivos){
                            echo 'Erro ao pegar ativos';
                       }
                       
                       foreach($resultado_pegaAtivos as $resAtivos){
                               $cotaId             = $resAtivos['cotaId'];        
                               $cotaNumero         = $resAtivos['cotaNumero'];                    
                               $cotaDtInicio       = $resAtivos['cotaDtInicio'];
                               $cotaHrsInicio      = $resAtivos['cotaHrsInicio'];                 
                               $cotaDtFim          = $resAtivos['cotaDtFim'];  
                               $cotaHrsFim         = $resAtivos['cotaHrsFim']; 
                               $cotaTitulo         = $resAtivos['cotaTitulo']; 
                               $cotaObserva        = $resAtivos['cotaObserva']; 
                               $cotaStatus         = $resAtivos['cotaStatus'];   
                               $clientes_clienteId = $resAtivos['clientes_clienteId'];       
                               $desc_categ         = $resAtivos['desc_categ'];                 
                               $desc_pgto          = $resAtivos['desc_pgto'];
                       }

                  ?>

 

Depois faço uma validação através do campo STATUS

                        <td align="center" width="70">
                        <?php 
                          
                          //O Sistema faz uma pesquisa do campo cotaStatus do resultado que veio do MySql
                          switch ($cotaStatus){
                            case 0: 
                            ?>
                            <!-- Editar a Cotação para Alteração -->
                               <form name="analisar" 
                                     action="painel.php?exe=admin-cliente/cotacao/cotacao_itens&cotacao=<?php echo $cotaId;?>" 
                                     enctype="multipart/form-data" method="post" >

                                  <input type="hidden" name="cotaId" value="<?php echo $cotaId;?>" />
                                  <input type="hidden" name="cotaNumero" value="<?php echo $cotaNumero;?>" />
                                
                                  <input class="btn btn-primary btn-xs" type="submit" name="executar" id="executar" 
                                         style="font-size: 14px;" value="Editar" />
                               </form> 
                            <?php
                            break;

                            case 1: 
                            ?>
                               <!-- Anilisar a Cotação para poder Alteração -->
                               <form name="analisar" 
                                     action="painel.php?exe=admin-cliente/cotacao/cotacao_itensCota&cotacao=<?php echo $cotaId;?>" 
                                     enctype="multipart/form-data" method="post" >

                                  <input type="hidden" name="cotaId" value="<?php echo $cotaId;?>" />
                                  <input type="hidden" name="cotaNumero" value="<?php echo $cotaNumero;?>" />
                                
                                  <input class="btn btn-success btn-xs" type="submit" name="executar" id="executar" 
                                         style="font-size: 14px;" value="Editar" />
                               </form> 
                            <?php 
                            break;

                            case 2: 
                            ?>
                            <!-- Visualizar a Cotação para Analisar -->
                               <form name="analisar" 
                                     action="painel.php?exe=admin-cliente/cotacao/cotacao_tela&cotacao=<?php echo $cotaId;?>" 
                                     enctype="multipart/form-data" method="post" >

                                  <input type="hidden" name="cotaId" value="<?php echo $cotaId;?>" />
                                  <input type="hidden" name="cotaNumero" value="<?php echo $cotaNumero;?>" />
                                
                                  <input class="btn btn-success btn-xs" type="submit" name="executar" id="executar" 
                                         style="font-size: 14px;" value="Editar" />                                      
                               </form>  
                            <?php
                            break;

                            case 3: 
                            ?>
                            <!-- Visualizar a Cotação para Enviar aos Fornecedores -->
                               <form name="analisar" 
                                     action="painel.php?exe=admin-cliente/cotacao/cotacao_telaDisp&cotacao=<?php echo $cotaId;?>" 
                                     enctype="multipart/form-data" method="post" >

                                  <input type="hidden" name="cotaId" value="<?php echo $cotaId;?>" />
                                  <input type="hidden" name="cotaNumero" value="<?php echo $cotaNumero;?>" />
                                
                                  <input class="btn btn-success btn-xs" type="submit" name="executar" id="executar" 
                                         style="font-size: 14px;" value="Editar" />                                      
                               </form>  
                            <?php
                            break;     

                            case 4: 
                            ?>
                            <!-- Visualizar a Cotação para Encerrar -->
                               <form name="analisar" 
                                     action="painel.php?exe=admin-cliente/cotacao/cotacao_telaFim&cotacao=<?php echo $cotaId;?>" 
                                     enctype="multipart/form-data" method="post" >

                                  <input type="hidden" name="cotaId" value="<?php echo $cotaId;?>" />
                                  <input type="hidden" name="cotaNumero" value="<?php echo $cotaNumero;?>" />
                                
                                  <input class="btn btn-success btn-xs" type="submit" name="executar" id="executar" 
                                         style="font-size: 14px;" value="Editar" />                                      
                               </form>  
                            <?php
                            break;                                                         

                          }//fim do switch/case

                        ?>
                        </td>    

 

Espero poder ter ajudado.

 

Cesar

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro 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

  • Conteúdo Similar

    • Por BTK
      Boa noite, estou tentando criar um curl que faz cadastro no site(o proprietário está ciente disso) porem ele está me retornando (HTTP/1.1 100 Continue HTTP/1.1 302 Moved Temporarily)

       $ch = curl_init();   
          
                                                                                                                     
          curl_setopt($ch, CURLOPT_URL, "https://www.cafefacil.com.br/customer/account/create/");                                     
          curl_setopt($ch, CURLOPT_HEADER, true);                                                                                                   
          curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36');                                                                                                                                               
          curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);                                                                                         
          curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);                                                                                       
          curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);                                                                                       
          curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  
          curl_setopt($ch, CURLOPT_COOKIESESSION, true);                                                                             
          curl_setopt($ch, CURLOPT_COOKIEJAR, getcwd().'/cafefacil.txt');
          curl_setopt($ch, CURLOPT_COOKIEFILE, getcwd().'/cafefacil.txt'); 
          
          
          
          
          $b1 = curl_exec($ch);
          
          $form_key = value($b1, 'type="hidden" name="form_key" value="', '"');
          
          curl_setopt($ch, CURLOPT_URL, 'https://www.cafefacil.com.br/customer/account/createpost/');                                     
          curl_setopt($ch, CURLOPT_HEADER, true);                                                                                                   
          curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36');                                                                                                                                                  
          curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);                                                                                         
          curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);                                                                                    
          curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);                                                                                       
          curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
          curl_setopt($ch, CURLOPT_COOKIESESSION, true);   
          curl_setopt($ch, CURLOPT_REFERER, 'https://www.cafefacil.com.br/customer/account/create/');                                                                           
          curl_setopt($ch, CURLOPT_COOKIEJAR, getcwd().'/cafefacil.txt');
          curl_setopt($ch, CURLOPT_COOKIEFILE, getcwd().'/cafefacil.txt'); 
          curl_setopt($ch, CURLOPT_POST, 1);                                                                                                    
          $boundary = '---------------------------WebKitFormBoundaryRQ3KHJbpfmPf11v6';
          
          $data = '-----------------------------'.$boundary.'
          Content-Disposition: form-data; name="success_url"
          
          
          -----------------------------'.$boundary.'
          Content-Disposition: form-data; name="error_url"
          
          
          -----------------------------'.$boundary.'
          Content-Disposition: form-data; name="form_key"
          
          '.$form_key.'
          -----------------------------'.$boundary.'
          Content-Disposition: form-data; name="tipopessoa"
          
          15
          -----------------------------'.$boundary.'
          Content-Disposition: form-data; name="firstname"
          
          NomeTest SobreNomeTest
          -----------------------------'.$boundary.'
          Content-Disposition: form-data; name="nomefantasia"
          
          
          -----------------------------'.$boundary.'
          Content-Disposition: form-data; name="inscricaoestadual"
          
          
          -----------------------------'.$boundary.'
          Content-Disposition: form-data; name="email"
          
          nometestsobrenometest@gmail.com
          -----------------------------'.$boundary.'
          Content-Disposition: form-data; name="day"
          
          01
          -----------------------------'.$boundary.'
          Content-Disposition: form-data; name="month"
          
          01
          -----------------------------'.$boundary.'
          Content-Disposition: form-data; name="year"
          
          1990
          -----------------------------'.$boundary.'
          Content-Disposition: form-data; name="dob"
          
          01/01/1990
          -----------------------------'.$boundary.'
          Content-Disposition: form-data; name="taxvat"
          
          199.758.750-50
          -----------------------------'.$boundary.'
          Content-Disposition: form-data; name="celular"
          
          (11)4712-8491
          -----------------------------'.$boundary.'
          Content-Disposition: form-data; name="password"
          
          senhatest
          -----------------------------'.$boundary.'
          Content-Disposition: form-data; name="confirmation"
          
          senhatest
          -----------------------------'.$boundary.'
          Content-Disposition: form-data; name="persistent_remember_me"
          
          on
          -----------------------------'.$boundary.'--';
          
          $header[] = "Content-Type: multipart/form-data; boundary=".$boundary;
          curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
          curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 
          
            
          echo $exec = curl_exec($ch);
          curl_close($ch);
    • Por allencar.limma
      Tento incluir as informações de um formulário no banco de dados e não consigo. conforme código abaixo.
      <? /*Incluir as informações no formulario */ include "config.php"; $nome = trim($_POST['nome']); $masp = trim($_POST['masp']); $cpf = trim($_POST['cpf']); $telefone = trim($_POST['telefone']); $email = trim($_POST['email']); $endereco = trim($_POST['endereco']); $data_nascimento = trim($_POST['data_nascimento']); $unidade_lotacao = trim($_POST['unidade_lotacao']); /* Vamos checar algum erro nos campos */ if ((!$nome) || (!$masp) || (!$cpf) || (!$telefone) || (!$email) || (!$endereco) || (!$data_nascimento) || (!$unidade_lotacao)){ echo "ERRO: <br /><br />"; if (!$nome){ echo "Nome Completo é requerido.<br />"; } if (!$masp){ echo "Masp é requerido.<br />"; } if (!$cpf){ echo "CPF é requerido.<br /)>"; } if (!$telefone){ echo "Telefone é requerido.<br />"; } if (!$email){ echo "Email é requerido.<br />"; } if (!$endereco){ echo "Endereço é requerido.<br />"; } if (!$data_nascimento){ echo "Data de Nascimento é requerido.<br />"; } if (!$unidade_lotacao){ echo "Unidade de Lotação é requerido.<br>"; } echo "Preencha os campos abaixo: <br />"; include "formulario_cadastro.php"; }else { /* Vamos checar se o nome de Usuário escolhido e/ou Email já existem no banco de dados */ $sql_email_check = mysql_query( "SELECT COUNT(usuario_id) FROM usuarios WHERE email='{$email}'" ); $sql_masp_check = mysql_query( "SELECT COUNT(usuario_id) FROM usuarios WHERE masp='{$masp}'" ); $sql_cpf_check = mysql_query( "SELECT COUNT(usuario_id) FROM usuarios WHERE cpf='{$cpf}'" ); $eReg = mysql_fetch_array($sql_email_check); $uReg = mysql_fetch_array($sql_masp_check); $uReg = mysql_fetch_array($sql_cpf_check); $email_check = $eReg[0]; $masp_check = $uReg[0]; $cpf_check = $uReg[0]; if (($email_check > 0) || ($masp_check > 0) || ($cpf_check > 0)){ echo "<strong>ERRO</strong>: <br /><br />"; if ($email_check > 0){ echo "Este email já está sendo utilizado.<br /><br />"; unset($email); } if ($masp_check > 0){ echo "Este Masp já está sendo utilizado.<br /><br />"; unset($masp); } if ($cpf_check > 0){ echo "Este CPF já está sendo utilizado.<br /><br />"; unset($cpf); } include "formulario_cadastro.php"; }else{ /* Se passarmos por esta verificação ilesos é hora de finalmente cadastrar os dados. Vamos utilizar uma função para gerar a senha de forma randômica*/ function makeRandomPassword(){ $salt = "abchefghjkmnpqrstuvwxyz0123456789"; srand((double)microtime()*1000000); $i = 0; while ($i <= 7){ $num = rand() % 33; $tmp = substr($salt, $num, 1); $pass = $pass . $tmp; $i++; } return $pass; } $senha_randomica = makeRandomPassword(); $senha = md5($senha_randomica); // Inserindo os dados no banco de dados //$cpf = htmlspecialchars($cpf); ***RETIRADO PELO FATO DE NÃO ESTA SENDO USADO $sql = mysql_query( "INSERT INTO usuarios (none, masp, cpf, telefone, email, endereco, data_nascimento, unidade_lotacao) VALUES ('$nome', '$masp', '$cpf', '$telefone', '$email', '$endereco', '$data_nascimento', '$unidade_lotacao', now())") or die( mysql_error() ); if (!$sql){ echo "Ocorreu um erro ao criar sua conta, entre em contato."; }else{ $usuario_id = mysql_insert_id(); // Enviar um email ao usuário para confirmação e ativar o cadastro! $headers = "MIME-Version: 1.0\n"; $headers .= "Content-type: text/html; charset=iso-8859-1\n"; $headers .= "From: RCI - <rci@rcionline.com.br>"; $subject = "Confirmação de cadastro - www.rcionline.com.br"; $mensagem = "Prezado {$nome} {$masp},<br /> Obrigado pelo seu cadastro em nosso site, <a href='http://www.rcionline.com.br'> http://www.rcionline.com.br</a>!<br /> <br /> Para confirmar seu cadastro e ativar sua conta em nosso site, podendo acessar à áreas exclusivas, por favor clique no link abaixo ou copie e cole na barra de endereço do seu navegador.<br /> <br /> <a href='http://www.rcionline.com.br/ativar.php?id={$usuario_id}&code={$senha}'> http://www.rcionline.com.br/ativar.php?id={$usuario_id}&code={$senha} </a> <br /> <br /> Após a ativação de sua conta, você poderá ter acesso ao conteúdo exclusivo efetuado o login com os seguintes dados abaixo:<br > <br /> <strong>Usuario</strong>: {$usuario_id}<br /> <strong>Senha</strong>: {$senha_randomica}<br /> <br /> Obrigado!<br /> <br /> Webmaster<br /> <br /> <br /> Esta é uma mensagem automática, por favor não responda!"; mail($email, $subject, $mensagem, $headers); echo "Foi enviado para seu email - ( ".$email." ) um pedido de confirmação de cadastro, por favor verifique e sigas as instruções!"; } } } ?>  
    • Por vinicius.david
      Gostaria que fosse possível encontrar produtos pela marca no Opencart 2.3.0.2. Quando a pessoa digitar no buscar a marca do produto, ele deveria mostrar todos os produtos que pertencem aquela marca. Em catalog/model/catalog/product.php já existe por padrão a função de procurar por fabricante: 

      if (!empty($data['filter_manufacturer_id'])) {                 $sql .= " AND p.manufacturer_id = '" . (int) $data['filter_manufacturer_id'] . "'";             }
      Mas ela não faz a função de procurar por marca. Alguém já encontrou alguma solução na internet para este caso?
    • Por manolegal
      Bom dia.
      Recebo em meu formulário um dado em forma de url.
      Extraio desta url o CNPJ da empresa. A seguir faço uma pesquisa para verificar se este CNPJ está em minha base de dados, sendo que se estiver trago dados da empresa para preenchimento do campo empresa do formulário.
      Estando a empresa no BD, consigo trazer os dados corretamente, porém estes dados não passados para o formulário para serem o valor inicial do campo empresa.
      $cnpj_numero = 12345678910; $Sql_cnpj = "SELECT id_empresa as id_empresa_bd_ext, upper(empresas.empresa) as fornecedor_bd_ext FROM empresas WHERE empresas.cnpj = '$cnpj_numero'"; $Resultado_cnpj = executa($Sql_cnpj); while ($linha_cnpj = pg_fetch_array($Resultado_cnpj)){ $empresa_bd_ext = $linha_cnpj["fornecedor_bd_ext"]; $forn_hid_bd_ext = $linha_cnpj["id_empresa_bd_ext"]; } echo "Fornecedor BD: $empresa_bd_ext - $forn_hid_bd_ext<br><hr>"; // Está mostrando dados corretamente // Definir valor a ser recebido pelo campo Empresa do Formulário if ($cnpj_numero != ""){ $empresa = $empresa_bd_ext; $forn_hid = $forn_hid_bd_ext; }else{ // Caso url não tenha trazido CNPJ, atribuo outro valor $empresa = $empresa_bd; $forn_hid = $forn_hid_bd; } O campo empresa do formulário não está recebendo o valor de $empresa. Considerando que exista um CNPJ, onde pode estar o problema?
    • Por edvaldo123
      Olá para todos, preciso de um código em PHP ou HMTL que mostre cotações de moedas, pra colocar em um site de notícias. Vou deixar um link abaixo onde tem exatamente o que preciso, porém queria remover algumas linhas desse código para não identificar seu site de origem.

      http://www.precododolar.com/widgets/cotacao.php
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.