Ir para conteúdo

POWERED BY:

Arquivado

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

Douglas_R

[Resolvido] Sistema de Busca por Data

Recommended Posts

Estou com um problema na minha busca quando tento executar a busca por data... eu tenho que digitar como está no banco de dados para ele conseguir buscar, como eu faço pra que quando eu digitar DD/MM/YYYY ele buscar no banco de dados que está com o padrão EUA YYYY/MM/DD? Na hora de exibir ele já está exibindo no padrão brasileiro DD/MM/YYYY

 

<?php
			include "conexao.php";
			
			$docnum = $_POST ['docnum'];
			$numprotoc = $_POST ['numprotoc'];
			$datai = $_POST ['datai'];
			$dataf = $_POST ['dataf'];
			
			
			$sql = "SELECT * FROM tabprotocolo WHERE numprotoc LIKE '$numprotoc' OR docnum LIKE '$docnum' OR (dtentrada BETWEEN '$datai' AND '$dataf')" or die (mysql_error ( ));
			$res = mysql_query ($sql) or die (mysql_error ( ));

			echo "<table width = 700 border = 1 cellpadding =  0 cellspacing = 0>";
			echo "<tr>";
			echo "<th width =100> Número do Protocolo: </th>";
			echo "<th width =100> Número do Documento: </th>";
			echo "<th width =100> Data de Entrada: </th>";
			echo "</tr>";
			
			while($row=mysql_fetch_array($res))
			{
			
			
				$data = explode('-',$row ['dtentrada']);
				$numprotoc = $row ['numprotoc'];
				$docnum = $row ['docnum'];
				$proceddoc = $row ['proceddoc'];
				

			echo "<tr>";
			echo "<th width = 100><a href = 'alteracao.php'>$numprotoc</a><br></th>";
			echo "<th width = 100>$docnum<br></th>";
			echo "<th width = 100>$data[2]/$data[1]/$data[0]<br></th>";
			echo "</tr>";
			echo "<br>";
			}
			
			echo "</table>";

		?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Assumindo que a entrada vai ser dd/mm/aaaa e a busca deve usar aaaa-mm-dd (padrão do campo date), bastaria:

$datai = implode('-',array_reverse(explode('/',$_POST['datai'])));

$dataf = implode('-',array_reverse(explode('/',$_POST['dataf'])));

 

Para a data já sair formatada, basta usar a função date_format do próprio MySQL.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Consegui resolver... é só substituir

$datai = $_POST ['datai'];
			$dataf = $_POST ['dataf'];

por:

 

$datai = implode('/', array_reverse(explode('/', $_POST ['datai'])));
			
			$dataf = implode('/', array_reverse(explode('/', $_POST ['dataf'])));

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.