Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
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 descOlá 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
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.