Ir para conteúdo

POWERED BY:

Arquivado

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

Foxitu

[Resolvido] busca por periodo com BETWEEN não funciona

Recommended Posts

ola pessoal do forum to com um pequeno problema preciso fazer uma busca no banco de dados e exibi-la numa tabela mas não exibe nada

 

 

	$sema  = mysql_query("SELECT * FROM caixa WHERE data BETWEEN '$data1' AND '$data2'")or die(mysql_error());
	


	while($l3 = mysql_fetch_array($sema)) {
        $id   		         	= $l3["id"];
	$data				= $l3["data"];
        $tipo     			= $l3["tipo"];
        $obs     			= $l3["obs"];
        $valor				= $l3["valor"];
		


	
		
		echo "<tr>
		  <td>$data</td>
		  <td>$tipo</td>
		  <td>$obs</td>
		  <td>R$ $valor</td>
		</tr> ";}

 

alguem me da uma luz?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Foxito, o usuário msantino pediu pra você mostrar como estão os dados gravados na variável $data1 e $data2.

Pois pode ocorrer que o formato que você está pesquisando ser diferente do que está gravado no banco de dados.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Foxito, o usuário msantino pediu pra você mostrar como estão os dados gravados na variável $data1 e $data2.

Pois pode ocorrer que o formato que você está pesquisando ser diferente do que está gravado no banco de dados.

 

 

o $data1 = gmdate("Y/m/d")

 

$data2 = ("$ano/$mes/$semana")

$dia = gmdate("d") ;

$mes = gmdate("m");

$ano = gmdate("Y");

 

$semana = $dia - 7 ;

Compartilhar este post


Link para o post
Compartilhar em outros sites

boa tarde Foxitu,

 

da um echo na consulta conforme abaixo:

 

echo "SELECT * FROM caixa WHERE data BETWEEN '$data1' AND '$data2'";

copia o reultado do navegador e tenta executar no banco, pra ver se retorna alguma coisa!! ;)

 

flw

Compartilhar este post


Link para o post
Compartilhar em outros sites

boa tarde Foxitu,

 

da um echo na consulta conforme abaixo:

 

echo "SELECT * FROM caixa WHERE data BETWEEN '$data1' AND '$data2'";

copia o reultado do navegador e tenta executar no banco, pra ver se retorna alguma coisa!! ;)

 

flw

 

 

 

bom o echo fico

 

 

SELECT * FROM caixa WHERE data BETWEEN '2010/10/20' AND '2010/10/13'

 

a consulta no phpmyadmin

 

MySQL retornou um conjunto vazio (ex. zero registros). (Consulta levou 0.0001 segundos)

 

mas pq quando busco somente a data de hj ele exibe os registros de hj?

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom... os dados desta consulta parecem estar errados....

 

na parte "data BETWEEN '2010/10/20' AND '2010/10/13'", repare que a primeira data(data inicial) é maior que a segunda(data final).

 

Portanto você está buscando no banco registros entre 20 de Outubro e 13 de Outubro.....

 

inverte as datas....

 

SELECT * FROM caixa WHERE data BETWEEN '2010/10/13' AND '2010/10/20'

copie essa linha de cima e tenta executar no MySQL... se não retornar nada é porque o formato da data está errado mesmo.. ;)

 

flw

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom... os dados desta consulta parecem estar errados....

 

na parte "data BETWEEN '2010/10/20' AND '2010/10/13'", repare que a primeira data(data inicial) é maior que a segunda(data final).

 

Portanto você está buscando no banco registros entre 20 de Outubro e 13 de Outubro.....

 

inverte as datas....

 

SELECT * FROM caixa WHERE data BETWEEN '2010/10/13' AND '2010/10/20'

copie essa linha de cima e tenta executar no MySQL... se não retornar nada é porque o formato da data está errado mesmo.. ;)

 

flw

 

 

deu certinho não acredito que não reparei isso aushaushaush vlw brigadão

Compartilhar este post


Link para o post
Compartilhar em outros sites

acontece... essas coisas fazem parte da vida do programadorr.... as vezes procuramos 'super' soluções mirabolantes para um problema de simples resolução!!!

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.