Ir para conteúdo
  • 0
Jack Oliveira

Problema em mostra Status

Pergunta

Olá pessoal boa noite

estou tendo um problema em mostra os Status como Ativo

no código php á definir para ser salvo como Ativo EX: 'status' =>  'S',

ele grava de boa 

mais lista Inativo mesmo estando no banco o valor S

 

para me mostrar se esta Ativo e Inativo fiz desta forma

 

	<?php if ($ListarCatalogo['status'] == 'S'){ ?>
<span><a href="?DesativarStatus=<?php echo $ListarCatalogo['id']; ?>" title="Item Inativo (<?php echo $ListarCatalogo['titulo']; ?>)" data-toggle="tooltip"  class="btn btn-sm btn-danger"><i class="fa fa-ban"></i></a></span>
	<?php }else{ ?>
<span><a href="?AtivarStatus=<?php echo $ListarCatalogo['id']; ?>" title="Item Ativo ( <?php echo $ListarCatalogo['titulo']; ?>)" data-toggle="tooltip"  class="btn btn-sm btn-success"><i class="fa fa-check"></i></a></span>
<?php } ?>

Tentei usar da seguinte forma tbm mais mesmo assim fica só invertido 

o que não seria o caso quando salvo ele não define nada

<?php if ($ListarCatalogo['status'] !== 'S'){ ?>

 

Vou mostra o código aqui mais sei que o problemas não esta aqui.

só para que todos possa entender melhor


// Ativar
    if (isset($_GET['AtivarStatus'])) {
        $id = get('AtivarStatus');
        $AtualizaCliente = array(
            'status'      => 'S'
        );

        $Query = DBUpdate("catalogo",$AtualizaCliente,"id = '{$id}'");
        if ($Query != 0) {
            Redireciona('?sucesso');
        } elseif ($Query == 0) {
            Redireciona('?erro');
        }
    }

// Desativar
    if (isset($_GET['DesativarStatus'])) {
        $id = get('DesativarStatus');
        $AtualizaCliente = array(
            'status'      => 'N'
        );

        $Query = DBUpdate("catalogo",$AtualizaCliente,"id = '{$id}'");
        if ($Query != 0) {
            Redireciona('?sucesso');
        } else {
            Redireciona('?erro');
        }
    }	

Este é o que faz o cadastro esta funcionando normal

// Adicionar Catalogo
	if (isset($_GET['Adicionar'])) {
$Adicionar = array(
			'titulo' 	     => post('titulo'),
			'preco' 	     => post('preco'),
			'data' 		     => date('d/m/Y'),
			'status' 	     => 'S',
			'id_categoria'   => post('id_categoria'),
			'obs'            => post('obs'),
			'descricao'      => post('descricao'),
			'id_user'        => DadosSession('id'),
			'codigo_produto' => post('codigo_produto'),
			'imagem' 	     => $Imagem

		);

		$Query = DBCreate('catalogo', $Adicionar);

		if ($Query != 0) {
	        Redireciona('?sucesso');
	    } else {
	        Redireciona('?erro');
	    }
	}

Espero que possam entender 

Compartilhar este post


Link para o post
Compartilhar em outros sites

2 respostas a esta questão

Recommended Posts

  • 0

1 - Bom, eu acho na minha opinião, que você deveria usar orientação a objeto, isso facilitaria na manutenção.

 

 

2 - Defina umas constantes para não usar strings em condicionais

   define("ACTIVE_STATUS" , "n");//o bom seria usar inteiros, é minha visão
   define("INACTIVE_STATUS" , "s");

e quando for salvar no banco de dados use a constante como valor, e para comparar use a constante também.

<?php if ($ListarCatalogo['status'] == ACTIVE_STATUS){ ?>

 

 

3 - Verifique se $ListarCatalogo['status'] não é um objeto, ex.: $ListarCatalogo->status.

 

 

4 - Use algum pacote de log

 

 

5 - Teste TUDO! Pois procedural é f***!

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • 0
3 horas atrás, quimera disse:

1 - Bom, eu acho na minha opinião, que você deveria usar orientação a objeto, isso facilitaria na manutenção.

 

 

2 - Defina umas constantes para não usar strings em condicionais

   define("ACTIVE_STATUS" , "n");//o bom seria usar inteiros, é minha visão
   define("INACTIVE_STATUS" , "s");

e quando for salvar no banco de dados use a constante como valor, e para comparar use a constante também.


<?php if ($ListarCatalogo['status'] == ACTIVE_STATUS){ ?>

 

 

3 - Verifique se $ListarCatalogo['status'] não é um objeto, ex.: $ListarCatalogo->status.

 

 

4 - Use algum pacote de log

 

 

5 - Teste TUDO! Pois procedural é f***!

 

Olá amigo fiz da maneira aí em cima mais deu certo não

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 Quencyjones79
      Olá boa tarde, sou iniciante na linguagem PHP, embora tenha umas noções básicas do código e estou com algumas dificuldades dúvidas no código que está a cor de laranja, se alguém que perceba de código PHP se me puder ajudar, agradecia imenso a ajuda.
       
       
      <?php 
      include "..\ligacao.php";
      ?>
               
      <?php
      $idFunc=$_POST['idFunc'];
      $NomeAlterado=$_POST['NomeAlterado'];
      $idLoja=$_POST['idLoja'];
      $permissao=$_POST['permissao'];
      if($idLoja=="Selecione..."){
          $idLoja=$_POST['idLojaAtual'];
      }
      if($permissao==NULL){
          $qfunc="UPDATE funcionario SET nome_func='".$NomeAlterado."',id_loja='".$idLoja."' WHERE id_func='".$idFunc."'";
          $connfunc=mysqli_query($ligax,$qfunc); 
       }else{    
          $qfunc="UPDATE funcionario SET nome_func='".$NomeAlterado."',id_loja='".$idLoja."', ativo_func='".$permissao."' WHERE id_func='".$idFunc."'";
          $connfunc=mysqli_query($ligax,$qfunc);
       }
      if($connfunc==1){
           print"<script> alert('Funcionário alterado com sucesso!');
                       location.href='../inserirfuncionario.php';</script>";
          exit;
      }else{
      print"<script> alert('Não foi possível alterar o Funcionário!');
          location.href='../inserirfuncionario.php';</script>";
      exit;
      }    
      ?>
       
      Atentamente,
       
      José Moreira
       
    • Por Quencyjones79
      Olá boa tarde, sou iniciante na linguagem PHP, embora tenha umas noções básicas do código e estou com algumas dificuldades dúvidas no código que está a cor de laranja, se alguém que perceba de código PHP se me puder ajudar, agradecia imenso a ajuda.
       
       
      <?php 
      include "..\ligacao.php";
      ?>
               
      <?php
      $idFunc=$_POST['idFunc'];
      $NomeAlterado=$_POST['NomeAlterado'];
      $idLoja=$_POST['idLoja'];
      $permissao=$_POST['permissao'];
      if($idLoja=="Selecione..."){
          $idLoja=$_POST['idLojaAtual'];
      }
      if($permissao==NULL){
          $qfunc="UPDATE funcionario SET nome_func='".$NomeAlterado."',id_loja='".$idLoja."' WHERE id_func='".$idFunc."'";
          $connfunc=mysqli_query($ligax,$qfunc); 
       }else{    
          $qfunc="UPDATE funcionario SET nome_func='".$NomeAlterado."',id_loja='".$idLoja."', ativo_func='".$permissao."' WHERE id_func='".$idFunc."'";
          $connfunc=mysqli_query($ligax,$qfunc);
       }
      if($connfunc==1){
           print"<script> alert('Funcionário alterado com sucesso!');
                       location.href='../inserirfuncionario.php';</script>";
          exit;
      }else{
      print"<script> alert('Não foi possível alterar o Funcionário!');
          location.href='../inserirfuncionario.php';</script>";
      exit;
      }    
      ?>
       
      Atentamente,
       
      José Moreira
       
    • Por felpsquirino
      Olá Pessoal,
       
      Não faço ideia de como posso fazer para que ao mudar um "status" de "0" para "1" em uma linha no banco de dado uma pagina dar refresh sozinha.
       
      Sobre o site: 
      É um site para executar um video do youtube simultâneo no pc e no celular, Já possui uma página para pc e uma outra para acessar no celular.
       
      O Fluxo funciona assim: 
      1 - Ao acessar o site pelo pc, vai ser exibido toda a instrução para acessar a outra página no celular.
      2 - Quando acessar a página pelo celular, vai ser criado uma linha no banco de dados que possui 3 colunas (id - Auto incremente / código - Salva um cod. aleatório / status - padrão "0"). Será exibido um código para digitar no input text da pagina que  está aberta no pc.
      3 - Após digitar o codigo na pagina que está aberta no pc e dar um submit nesse código, vai ser alterado o status dessa linha no BD de "0" para "1".
      4 - Assim q alterar o status para "1" a pagina do celular da um refresh automático.  
       
      Observação: todo o fluxo já está pronto, o que eu preciso é só fazer esse refresh sozinho na página do celular ao mudar o status de "0" para "1". 
       
      Como posso fazer isso? Muito obrigado pela atenção! 
       
    • Por Spybrbr
      Boa noite,
       
      Estou precisando exibir o status de um pedido como nesse exemplo abaixo:
       

       
      Alguem poderia me dar uma dica de como fazer?
    • Por Mr. Whyte
      Olá! Como eu poderia fazer um sistema que verifique se tal servidor está online ou offiline? (Ip e port)
×

Informação importante

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