Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

  • 0
Naimar

Usar apenas variáveis preenchidas na clausula where

Pergunta

Em um formulário com vários campos, o usuário pode preencher alguns sim e outros não (Ou preencher todos conforme a necessidade).

A questão é: Como insiro na clausula where, somente os campos que foram preenchidos pelo usuário, ou seja, somente as variáveis que não estão vazias ??? 

Compartilhar este post


Link para o post
Compartilhar em outros sites

4 respostas a esta questão

Recommended Posts

10 minutos atrás, Naimar disse:

Em um formulário com vários campos, o usuário pode preencher alguns sim e outros não (Ou preencher todos conforme a necessidade).

A questão é: Como insiro na clausula where, somente os campos que foram preenchidos pelo usuário, ou seja, somente as variáveis que não estão vazias ??? 

Você está montando a query de forma automática ou manual?

Poderia deixar um exemplo?

Compartilhar este post


Link para o post
Compartilhar em outros sites
4 minutos atrás, jamesbond disse:

Você está montando a query de forma automática ou manual?

Poderia deixar um exemplo?

Bem "basicão".Populo as variáveis de acordo com o conteúdo dos inputs e logo depois executo uma query usando essas variáveis no where:

...where (id_obra = $id_obra) and (data_update between $data_inicio and $data_final) and (id_responsavel = $id_responsavel) and (id_construtora = $id_construtora) 

A questão é que as variáveis $id_obra, $data_inicio, $data_final, id_responsavel e id_construtora podem ou não ter sido preenchidas, ou seja, o usuário pode ou não ter preenchido esses campos.
Eu simplifiquei aqui mas trata-se de cerca de 16 campos que podem  ou não estarem preenchidos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Naimar tudo bem ? 

 

Eu em todos os meu projectos tenho por norma fazer o seguinte vamos a um exemplo prático um formulário com os seguintes campos NOME / IDADE / CONTACTO .

Nome e idade é obrigatório contacto não é ou seja eu ao fazer o insert na base da dados eu insiro 

Nome -> O nome do utilizador

Idade-> A idade dele

Contacto-> Indefinido 

 

Eu aprendi a fazer sempre desta maneira ! Porque assim depois até para visualizar os dados se torna mais legível e agradável.

 

Caso não queiras assim terás de ver antes da tua instrução sql se a tua variável está ou não vazia .... 

 

Espero que tenha ajudado!

 

 

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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