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 Claudia França
      Pessoal estou com um problema para homologar um pagamento service.
       o resultado do Status deve ser sucessfull.
      Parte do codido do index.
      "

          $('#payButton').one('click', function(){
              var amount = $('input[name=amount]').val();
              var currency = $('[name=currency]').val();
              console.log(amount, currency);
              V.init( {
                  apikey: '<?php echo $visaApiKey ?>',
                  settings: {
                      //logoUrl: 'https://www.novachance.org.br/wp-content/uploads/2018/06/xLogo_INC.jpg.pagespeed.ic.QrM-Azm3n5.jpg',
                      locale: 'en_US',
                      displayName: 'Viva a Musica',
                      websiteUrl: 'https://www.vivaamusica.org.br',
                      customerSupportUrl: 'https://www.vivaamusica.org.br/contato',
                      dataLevel: 'FULL'
                  },
                  paymentRequest: {
                      currencyCode: currency,
                      total: amount,
                      merchantRequestId: 'you can send any value to API ang get it in callback',
                      orderId: 'you can send any value to API ang get it in callback',
                      description: 'any order description if needs'
                  }
              });
                V.on('payment.success', function(payment) {
                  console.log('Visa success:', JSON.stringify(payment));
                  $('#succesOverlay').show();
                  $.ajax({
                      type: 'POST',
                      url: 'mailer.php',
                      data: {json: JSON.stringify(payment)},
                      dataType: 'json',
                      success: function(data){
                        console.log('Ajax success');
                        console.log(data);
                        location = 'thanks.php';
                      },
                      error: function(jqXHR, textStatus, errorThrown) {
                        console.log('Ajax error:');
                        console.log(textStatus, errorThrown);
                      }
                  });
              });
              V.on('payment.cancel', function(payment){
                  console.log('Canceled:', payment);
              });
              V.on('payment.error', function(payment, error){
                  console.log('Visa error:', payment, error);
              });
              $('.v-button').click();
          })
       
      "
       Chamada Json
       
      "
      "Customer": {
              "Name": "[$userFullName]"
          },
          "Payment": {
              "ServiceTaxAmount": 0,
              "Installments": 1,
              "Interest": 0,
              "Capture": false,
              "Authenticate": false,
              "Recurrent": false,
              "CreditCard": {
                  "CardNumber": "453211******1521",
                  "Holder": "Gama Gama",
                  "ExpirationDate": "08/2020",
                  "SaveCard": false,
                  "Brand": "Visa"
              },
              "Tid": "0319040817883",
              "ProofOfSale": "817883",
              "AuthorizationCode": "027795",
              "Wallet": {
                  "Type": "VisaCheckout",
                  "WalletKey": "1140814777695873901",
                  "Eci": 0
                  },
              
              "SoftDescriptor": "123456789ABCD",
              "Amount": 100,
              "ReceivedDate": "2018-03-19 16:08:16",
              "Status": "eventStatus",
              "IsSplitted": false,
              "ReturnMessage": "Operation Successful",
              "ReturnCode": "4",
              "PaymentId": "e57b09eb-475b-44b6-ac71-01b9b82f2491",
              "Type": "CreditCard",
              "Currency": "BRL","en_US",
              "Country": "BRA","USA",
              
              
          
      "updateInfo":  {
               "payInfo": {
               "reason": "Pagamento","Payment",
               "avsResponseCode": "Y",
               "Amount": 91.00,
               "currencyCode": "USD",
               "eventStatus": "Success",
               "eventType": "Authorize",
               "PaymentId": "e57b09eb-475b-44b6-ac71-01b9b82f2491",
              
               }
      }
           
            }
      }
      {
       
       
      "
       
       
      O pessoal da empresa me fala que tenho que enviar o CallID gerado ( não sei como faço isso) e fazer a chamado do alteração de evento quando a transação for sucesso.
       
      Pensei em criar um aquivo payment.php mas pelo que li no manual necessariamente, não eh necessário.
       
    • Por edison.silva
      Pessoal, alguem tem algum exemplo em php de geração do arquivo .TXT2 da NFe ou MDFe e o envio para API de rotas dele?
    • Por eduuh1524
      Olá.
      Boa noite a todos,eu preciso de uma ajuda.
      Eu tenho um projeto em PHP e MySQL
      Tem uma database chamada easy e a uma tabela chamada usuários
      E dentro da tabela tem usuário,senha, saldo
       
      Bem.
      Eu tenho um random resultados em duas form na (resultados.php)eu queria fazer que quando a pessoa clicasse no botão Gerar usasse o saldo e gerasse o resultado.
      Exemplo,a pessoa já começa com 1000 de saldo e o botão diminui esse saldo em 100 e quando esse saldo chegasse em 0 se tentasse usar dá um erro de saldo insuficiente.
      Como posso fazer isso?
      Dei uma olhada em uns artigos aqui mas estou meio confuso,sou iniciante em PHP mas tenho uma noçãozinha .
      Boa noite a todos.
       
    • Por rd111072
      Olá, moçada!

      Tenho esse gráfico aqui: http://riocir.com.br/renan/chart_barg_g2.php 
      Mas ele exibe só os dias da semana do mês 1. Queria que ele exibisse todos os dias de todos os meses (como é o resultado do echo).

      Segue o código. Alguém pode me ajudar?
       
       
    • Por capaldi
      <?php
      if(isset($_GET['deletar']) && $_GET['deletar'] == 'sim'):
          $id_produto = (int)$_GET['produto'];
          $pegar_dados_produto = BD::conn()->prepare("SELECT img_padrao FROM loja_produtos WHERE id = ?");
          $pegar_dados_produto->execute(array($idProduto));
          $dadosProd = $pegar_dados_produto->fetchObject();
          
          $verificar_imagens = BD::conn()->prepare("SELECT * FROM loja_imgprod WHERE id_produto = ?");
          $verificar_imagens->execute(Array($idProduto));
          
          if($verificar_imagens->rowCount() == 0){
              if(unlink('../../produtos/'.$dadosProd->img_padrao)){
                  $deletar_produto =BD::conn()->prepare("DELETE FROM loja_produtos WHERE id = ?");
                  if($deletar_produto->execute(array($IdProduto))){
                      echo'<script>alert("Produto excluido com sucesso!");location.href"index.php?pagina=editarProdutos</script>';    
                  }
                  
              }
              
          }else{
              while($dadosImagenm = $verificar_imagens->fetchObject()){
                  unlink('../../produtos/'.$dadosImagem->img);
              }
              if(unlik('../../produtos/'.$dadosProd->img_padrao)){
                  $deletar_produto = BD::conn()->prepare("DELETE FROM loja_produtos WHERE id = ?");
                  if($deletar_produto->execute(array($idproduto))){
                      echo'<script>alert("Produto excluido com sucesso!");location.href"index.php?pagina=editarProdutos</script>';
                  }
              }
          }
      endif;
      ?>
       
      Ola, estou tabalhando com esse script, e não consigo resolver esse problema alguém pose me ajudar?
×

Informação importante

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