Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 216

Buscar cadastros entre data atual e data passada

03-06-2011 08:44

Bom dia.
Estou precisando fazer uma busca entre datas, mas o problema é que quando fiz esse sistema eu tinha menos conhecimento que hoje...rs e fiz o campo data separado por dia, mês e ano.

Os campos são:
Dia: d_venc_D
Mês: d_venc_M
Ano: d_venc_A

Eu preciso fazer um listagem onde ira mostrar todos os usuários com cadastros vencidos entre 01-01-2001 até a data de hoje 03-06-2011. Estou usando o comando date("Y/m/d"); para mostrar a data atual.

Por teoria em outras ajudas que tive com você a respeito de tadas, estou fazendo assim:
$inicioDiaMes = "01-01-2011"; $dataAtual = date("Y/m/d"); $query_lista = "SELECT ID, (d_venc_D, d_venc_M, d_venc_A) AS data, badge, foto, nome FROM cadastro WHERE data BETWEEN '$inicioDiaMes' AND '$dataAtual' ORDER BY nome ASC";

O que estou fazendo de errado?

MOVIDO: de PHP para MySQL
0
Editado pela última vez por web em 03-06-2011 12:45, em um total de 1 vez.
Razão: Título melhorado
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17504
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Buscar cadastros entre data atual e data passada

03-06-2011 12:42

Para usar o BETWEEN, as datas devem seguir o formato aaaa/mm/dd com o mesmo separador em ambas as datas, ou / ou -
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 216

Buscar cadastros entre data atual e data passada

03-06-2011 16:36

E no meu caso, como eu faço?
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17504
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Buscar cadastros entre data atual e data passada

03-06-2011 18:22

Tenta o seguinte

$inicioDiaMes = "2011/01/01";

Se não funcionar, dá uma olhada nesse post abaixo que trata do mesmo assunto
buscar-um-intervalo-de-data-inserida-na ... 1_598.html
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 216

Buscar cadastros entre data atual e data passada

04-06-2011 12:27

Acho que não se lembrou..rs, os meus campos são separados, dia, mês e ano.
Dia: d_venc_D
Mês: d_venc_M
Ano: d_venc_A

Esse esta sendo o meu problema, para fazer essa busca entre datas.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17504
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Buscar cadastros entre data atual e data passada

04-06-2011 16:10

Nesse caso você vai precisar concatenar "unir" as 3 colunas referentes a data, usando um separador.

Postei um exemplo no post abaixo
Como-unir-duas-colunas-com-CONCAT-do-MySQL_19_6391.html

Você irá usar o exemplo com separador, e o valor do AS você irá usar no BETWEEN.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 216

Buscar cadastros entre data atual e data passada

06-06-2011 11:01

Bom dia.
Estou fazendo assim:
SELECT CONCAT(d_venc_D,'-',d_venc_M,'-',d_venc_A) AS Ndata FROM cadastro WHERE Ndata BETWEEN '01-01-2001' AND '06-06-2011' ORDER BY nome ASC

Mas estou tendo esse erro. Estou fazendo direto no MySQL para testar.
#1054 - Unknown column 'Ndata' in 'where clause'
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17504
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Buscar cadastros entre data atual e data passada

06-06-2011 11:35

Tenta concatenar após o WHERE

SELECT nome
FROM cadastro
WHERE CONCAT(d_venc_D,'-',d_venc_M,'-',d_venc_A) BETWEEN '01-01-2001' AND '06-06-2011'
ORDER BY nome
ASC
0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado