Ir para conteúdo

POWERED BY:

Arquivado

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

Bruno Conte

Busca interna no sistema

Recommended Posts

Estou montando a busca do meu sistema aqui, so que tenho uma duvida aqui.

 

a busca vai ser entre, chassi, destino, datainicio e datafim.

 

e minha duvida esta ai como alem de buscar o chassi ou o destino ele busca entre datas, onde o usuario digita a datainicio e a datafim exemplo -> 01/04/2010 à 05/04/2010 e ele fazer a busca entre as datas puxando o chassi e as vezes o destino. lembrando que minha duvida esta entre as datas.

 

Buscando aqui no forum achei num topico sobre mostrar resultados entre datas.

 

select * from tabela where campo_data BETWEEN '$datainicio' AND '$datafim'

e o sql da busca o seguinte:

 

$sql = "SELECT * FROM pdi WHERE chassi LIKE '%".$chassi."%' AND destino LIKE '%".$destino."%' ORDER BY data DESC";

aquem pode me ajudar como fazer essa busca???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você quer dizer que está querendo buscar um valor entre duas datas?

 

Se for isso, é CRUCIAL que você trate a data, transformando no formato mysql (AAAA-MM-DD, acredito).

 

Se bem me lembro, o BETWEEN é isso mesmo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

o tratamento das datas ta ok já, quero so saber se eu fazendo a condição assim fica certo:

 

$sql = "SELECT * FROM pdi where data BETWEEN '$datainicio' AND '$datafim' AND chassi LIKE '%".$chassi."%' AND destino LIKE '%".$destino."%' ORDER BY data DESC";

Compartilhar este post


Link para o post
Compartilhar em outros sites

mudei um poco o sistema de busca, não vai mais precisar deste modo.

 

so que a busca do jeito que to fazendo esta dando erro:

 

olha o codigos:

 

formulario:

 

<form action="busca_carro.php" method="post" name="busca">
                                    <table width="100%" border="0">
                                      <tr>
                                        <td width="22%"><span class="style12">Chassi:</span></td>
                                        <td width="78%"><input type="text" name="chassi" maxlength="8" /></td>
                                      </tr>
                                      <tr>
                                        <td><span class="style18 style17">Destino</span></td>
                                        <td><select name="destino" id="destino">
                                          <option value="0">
                                            <Selecione o tipo>
                                            </option>
                                          <?php while($array = mysql_fetch_array($sql_destino)) {?>
                                          <option value="<?php echo $array['1']; ?>"><?php echo $array['1']; ?></option>
                                          <?php } ?>
                                        </select></td>
                                      </tr>
                                      <tr>
                                        <td> </td>
                                        <td><input type="submit" value="Buscar" style="background-color: #EFEFEF; color: #333333; border: 1 solid #666666" /></td>
                                      </tr>
                                    </table>
                                  </form>

Arquivo busca_carro.php

 

<?php
header("Content-Type: text/html; charset=ISO-8859-1", true);
require ("../includes/conecta.php");
$sql_usu = "select id, chassi, anomodelo, data, hora, destino from pdi";
$chassi = $_POST['chassi'];
$destino = $_POST['destino'];
if(!empty($chassi)) {
$sql_usu .= " AND chassi LIKE '%$chassi%' AND destino LIKE '%$destino%'";
}
$sql_usuarios = mysql_query($sql_usu) or die( mysql_error() );

?>

erro:

 

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AND chassi LIKE '%AU222186%' AND destino LIKE '%Caoa-São Paulo%'' at line 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você não entendeu mesmo o motivo do erro ?

if(!empty($chassi))
{
   $sql_usu .= " WHERE chassi LIKE '%$chassi%' AND destino LIKE '%$destino%'";
}
echo $sql_usu;//apenas para debug

Compartilhar este post


Link para o post
Compartilhar em outros sites

o que voce me aconselha a fazer???? pois pelo que parece ele nao esta buscando no db.

 

select id, chassi, anomodelo, data, hora, destino from pdi AND chassi LIKE '%AU222186%' AND destino LIKE '%Caoa-São Paulo%'

deu esse erro agora

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faltou a palavra WHERE no SQL:

 

<?php
header("Content-Type: text/html; charset=ISO-8859-1", true);
require ("../includes/conecta.php");
$sql_usu = "select id, chassi, anomodelo, data, hora, destino from pdi WHERE 1=1 ";
$chassi = $_POST['chassi'];
$destino = $_POST['destino'];
if(!empty($chassi)) {
$sql_usu .= " AND chassi LIKE '%$chassi%' AND destino LIKE '%$destino%'";
}
$sql_usuarios = mysql_query($sql_usu) or die( mysql_error() );

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

assim funcionou parcialmente.

Quando digito so o chassi ele nao aparece nenhum resultado, mesmo o chassi estando cadastrado, agora quando seleciono um destino qualquer tipo Caoa-Piracicaba ele esta aparecendo todos os veiculos cadastrado em todos os destino mesmo você selecionando o destino. Mais se eu colocar o chassi e o destino certim ele funciona beleza.

 

 

o que tenho que pensar e que podemos colocar so o chassi ou so o destino e ele tem que funcionar.

 

colocando so o chassi nao aparece nenhum resultado e so o destino aparece todos os registros de todos os destinos e nao so o que selecionei. lembrando que o destino e selecionado por select

Compartilhar este post


Link para o post
Compartilhar em outros sites

praticamente resolveu meu problema, agora o unico erro e quando so buscamos por destino.

 

como todos destinos são assim:

Caoa-São Paulo

Caoa-Piracicaba

Caoa-Porto Alegre

 

e nos buscamos por valores puxados do banco de dados, entao selecionamos um dos 3 e tem que buscar so esse destino, e esta buscando todos os destinos sem colocar apenas o que busco

 

codigo funcionando:

 

<?php
header("Content-Type: text/html; charset=ISO-8859-1", true);
require ("../includes/conecta.php");

$sql = "SELECT * FROM pdi WHERE chassi LIKE '%$chassi%' OR destino LIKE '%$destino%'";
$sql_usuarios = mysql_query($sql) or die( mysql_error() );

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>RG Service Automotiva</title>
<style type="text/css">
<!--
body {
	background-image: url(imgs/fundo.jpg);
}

a { text-decoration: none; }
a.classe1:hover { text-decoration: underline; color: #003366; }

a.classe1 { color: #003366; }

a.classe2  { text-decoration: underline overline; }
a.classe2:hover {text-decoration: underline; color: #003366; }

.style12 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; color: #003366; }
.style13 {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 12px;
	color: #003366;
	font-weight: bold;
}
.style16 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; }
.style19 {color: #003366}
.style22 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; color: #FF6600; }
-->
</style></head>

<body>
<table width="800" border="0" align="center">
  <tr>
    <td><img border="0" src="../imgs/logo.jpg" width="250" height="180"></td>
  </tr>
  <tr>
    <td bgcolor="#FF9933">
	<table border="0" width="100%">
		<tr>
			<td width="102"> </td>
		  <td width="144"> </td>
		  <td> </td>
		</tr>
	</table>
	</td>
  </tr>
  <tr>
    <td>
	<table border="0" width="100%">
		<tr>
			<td> </td>
		</tr>
		<tr>
			<td>
			<table border="0" width="100%">
				<tr>
					<td width="179" valign="top"><table width="100%" border="0">
                      <tr bgcolor="#CCCCCC">
                        <td><span class="style12"><a href="index_painel.php" class="classe1">Pagina inicial</a></span></td>
                      </tr>
                      <tr bgcolor="#CCCCCC">
                        <td><span class="style12"><a href="listarveiculos.php" class="classe1">Listar Veículos Cadastrados</a></span></td>
                      </tr>
                      <tr bgcolor="#CCCCCC">
                        <td><span class="style12"><a href="cadastrardestino.php" class="classe1">Cadastrar Destino</a></span></td>
                      </tr>
                      <tr bgcolor="#CCCCCC">
                        <td> <span class="style12"><a href="listardestinos.php" class="classe1">Listar destinos</a></span> </td>
                      </tr>
                      <tr bgcolor="#CCCCCC">
                        <td><span class="style12"><a href="cadastrousuario.php" class="classe1">Cadastrar Usuário</a></span></td>
                      </tr>
                      <tr bgcolor="#CCCCCC">
                        <td><span class="style12"><a href="listarusuarios.php" class="classe1">Listar usuários</a></span></td>
                      </tr>
                      <tr bgcolor="#CCCCCC">
                        <td><span class="style12"><a href="cadastraradministrador.php" class="classe1">Cadastrar Administrador</a></span></td>
                      </tr>
                      <tr bgcolor="#CCCCCC">
                        <td><span class="style12"><a href="deslogar.php" class="classe1">Deslogar</a></span></td>
                      </tr>
                    </table></td>
										<td width="599" valign="top"><table width="100%" border="0">
                      <tr>
                        <td bgcolor="#FF9933"><div align="center" class="style13">Resultado da Busca</div></td>
                      </tr>
                    </table>
					  <table width="100%" border="0">
                        <tr>
                          <td bgcolor="e8e8e8"></td>
                        </tr>
                        <tr>
<?php
function converterData($data) {
$data = implode(preg_match("~\/~", $data) == 0 ? "." : "-", array_reverse(explode(preg_match("~\/~", $data) == 0 ? "-" : "/", $data)));
return $data;
}
?>
                          <td bgcolor="e8e8e8"><table width="100%" border="0">
                            <tr bgcolor="#CCCCCC">
                              <td width="17%"><div align="center" class="style19"><span class="style16">Chassi</span></div></td>
                              <td width="19%"><div align="center" class="style19"><span class="style16">Modelo</span></div></td>
                              <td width="13%"><div align="center" class="style19"><span class="style16">Data</span></div></td>
                              <td width="13%"><div align="center" class="style19"><span class="style16">Hora</span></div></td>
                              <td width="21%"><div align="center" class="style19"><span class="style16">Destino</span></div></td>
                              <td width="17%"><div align="center"><span class="style19"></span></div></td>
                            </tr>
                            <tr><?php
if ($r = mysql_num_rows($sql_usuarios) > 0)
while ($vetor=mysql_fetch_array($sql_usuarios)) { 
$data = converterData($vetor[4]); ?>
                              <td><div align="center" class="style22"><?php echo $vetor[2] ?></div></td>
                              <td><div align="center" class="style22"><?php echo $vetor[3] ?></div></td>
                              <td><div align="center" class="style22"><?php echo $data ?></div></td>
                              <td><div align="center" class="style22"><?php echo $vetor[5]  ?></div></td>
                              <td><div align="center" class="style22"><?php echo $vetor[9] ?></div></td>
                              <td><div align="center" class="style22">Visualizar - Alterar - Excluir</div></td>
                            </tr><?php echo"Temos $r Veículos cadastrados"; ?><?php } ?>
                          </table></td>
                        </tr>
                      </table></td>
				</tr>
			</table>
		  </td>
		</tr>
		<tr>
			<td><div align="center">
</div></td>
		</tr>
	</table>
	</td>
  </tr>
</table>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

erro na busca por data:

 

<?php
header("Content-Type: text/html; charset=ISO-8859-1", true);
require ("../includes/conecta.php");
$datainicio = implode('-',array_reverse(explode('/',$_POST['datainicio'])));
$datafim = implode('-',array_reverse(explode('/',$_POST['datafim'])));
$sql = "SELECT * FROM pdi WHERE data BETWEEN '$datainicio' AND '$datafim''";
$sql_usuarios = mysql_query($sql) or die( mysql_error() );

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>RG Service Automotiva</title>
<style type="text/css">
<!--
body {
	background-image: url(imgs/fundo.jpg);
}

a { text-decoration: none; }
a.classe1:hover { text-decoration: underline; color: #003366; }

a.classe1 { color: #003366; }

a.classe2  { text-decoration: underline overline; }
a.classe2:hover {text-decoration: underline; color: #003366; }

.style12 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; color: #003366; }
.style13 {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 12px;
	color: #003366;
	font-weight: bold;
}
.style16 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; }
.style19 {color: #003366}
.style22 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; color: #FF6600; }
-->
</style></head>

<body>
<table width="800" border="0" align="center">
  <tr>
    <td><img border="0" src="../imgs/logo.jpg" width="250" height="180"></td>
  </tr>
  <tr>
    <td bgcolor="#FF9933">
	<table border="0" width="100%">
		<tr>
			<td width="102"> </td>
		  <td width="144"> </td>
		  <td> </td>
		</tr>
	</table>
	</td>
  </tr>
  <tr>
    <td>
	<table border="0" width="100%">
		<tr>
			<td> </td>
		</tr>
		<tr>
			<td>
			<table border="0" width="100%">
				<tr>
					<td width="179" valign="top"><table width="100%" border="0">
                      <tr bgcolor="#CCCCCC">
                        <td><span class="style12"><a href="index_painel.php" class="classe1">Pagina inicial</a></span></td>
                      </tr>
                      <tr bgcolor="#CCCCCC">
                        <td><span class="style12"><a href="listarveiculos.php" class="classe1">Listar Veículos Cadastrados</a></span></td>
                      </tr>
                      <tr bgcolor="#CCCCCC">
                        <td><span class="style12"><a href="cadastrardestino.php" class="classe1">Cadastrar Destino</a></span></td>
                      </tr>
                      <tr bgcolor="#CCCCCC">
                        <td> <span class="style12"><a href="listardestinos.php" class="classe1">Listar destinos</a></span> </td>
                      </tr>
                      <tr bgcolor="#CCCCCC">
                        <td><span class="style12"><a href="cadastrousuario.php" class="classe1">Cadastrar Usuário</a></span></td>
                      </tr>
                      <tr bgcolor="#CCCCCC">
                        <td><span class="style12"><a href="listarusuarios.php" class="classe1">Listar usuários</a></span></td>
                      </tr>
                      <tr bgcolor="#CCCCCC">
                        <td><span class="style12"><a href="cadastraradministrador.php" class="classe1">Cadastrar Administrador</a></span></td>
                      </tr>
                      <tr bgcolor="#CCCCCC">
                        <td><span class="style12"><a href="deslogar.php" class="classe1">Deslogar</a></span></td>
                      </tr>
                    </table></td>
										<td width="599" valign="top"><table width="100%" border="0">
                      <tr>
                        <td bgcolor="#FF9933"><div align="center" class="style13">Resultado da Busca</div></td>
                      </tr>
                    </table>
					  <table width="100%" border="0">
                        <tr>
                          <td bgcolor="e8e8e8"></td>
                        </tr>
                        <tr>
<?php
function converterData($data) {
$data = implode(preg_match("~\/~", $data) == 0 ? "." : "-", array_reverse(explode(preg_match("~\/~", $data) == 0 ? "-" : "/", $data)));
return $data;
}
?>
                          <td bgcolor="e8e8e8"><table width="100%" border="0">
                            <tr bgcolor="#CCCCCC">
                              <td width="17%"><div align="center" class="style19"><span class="style16">Chassi</span></div></td>
                              <td width="19%"><div align="center" class="style19"><span class="style16">Modelo</span></div></td>
                              <td width="13%"><div align="center" class="style19"><span class="style16">Data</span></div></td>
                              <td width="13%"><div align="center" class="style19"><span class="style16">Hora</span></div></td>
                              <td width="21%"><div align="center" class="style19"><span class="style16">Destino</span></div></td>
                              <td width="17%"><div align="center"><span class="style19"></span></div></td>
                            </tr>
                            <tr><?php
if ($r = mysql_num_rows($sql_usuarios) >= 1)
while ($vetor=mysql_fetch_array($sql_usuarios)) { 
$data = converterData($vetor[4]); ?>
                              <td><div align="center" class="style22"><?php echo $vetor[2] ?></div></td>
                              <td><div align="center" class="style22"><?php echo $vetor[3] ?></div></td>
                              <td><div align="center" class="style22"><?php echo $data ?></div></td>
                              <td><div align="center" class="style22"><?php echo $vetor[5]  ?></div></td>
                              <td><div align="center" class="style22"><?php echo $vetor[9] ?></div></td>
                              <td><div align="center" class="style22">Visualizar - Alterar - Excluir</div></td>
                            </tr><?php echo"Temos $r Veículos cadastrados"; ?><?php } ?>
                          </table></td>
                        </tr>
                      </table></td>
				</tr>
			</table>
		  </td>
		</tr>
		<tr>
			<td><div align="center">
</div></td>
		</tr>
	</table>
	</td>
  </tr>
</table>
</body>
</html>

esta dando esse erro:

 

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''2010-04-07''' at line 1

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.