Ir para conteúdo

POWERED BY:

Arquivado

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

jcao

Pesquisa por aproximacao

Recommended Posts

Estou tentando fazer uma pesquisa por aproximacao, ou seja, tenho um campo na tabela que e alfanumerico. O campo chama-se contrato e eu entro com um valor em em um formulario e quero que ele me retorne todos os valores que contiverem pelo menos aqueles caracteres que eu entrar no formulario. O codigo que estou usando e o seguinte

$id_empresa = $_SESSION['id_empresa'];   $contrato = $_REQUEST['contrato'];  	 // $query = "SELECT * FROM processo WHERE id_empresa = $id_empresa AND contrato LIKE '$contrato'" OR die("FALHA AO BUSCAR".mysql_error());	  $query = "SELECT * FROM processo WHERE id_empresa = $id_empresa AND contrato = '%$contrato%'" OR die("FALHA AO BUSCAR".mysql_error());	  $result = mysql_query($query);	  $nrows = mysql_num_rows($result); 	  $navegador = $_REQUEST['navegador'];	  if(!isset($navegador)) $navegador = 0; //numero de itens que aparecerá por página, se não houver uma variavel limite, o limite será 10	  $limite = $_REQUEST['limite']?$_REQUEST['limite']:10;	 // $query = "SELECT * FROM processo WHERE id_empresa = $id_empresa AND contrato LIKE '$contrato'" OR die("FALHA AO BUSCAR".mysql_error());	  $sql = "SELECT * FROM processo WHERE id_empresa = $id_empresa AND contrato = '%$contrato%'" OR die("FALHA AO BUSCAR".mysql_error());
O problema e que nao esta retornando nada, qualquer que seja a combinacao de caracteres que eu entre.

Ja revi todas as possibilidades e nao estou achando a saida...

Agradeco a ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiz a correcao mas agora ele da erro

$query = "SELECT * FROM processo WHERE id_empresa = $id_empresa AND contrato LIKE '%$contrato%'" OR die("FALHA AO BUSCAR".mysql_error());	  //$query = "SELECT * FROM processo WHERE id_empresa = $id_empresa AND contrato = '$contrato'" OR die("FALHA AO BUSCAR".mysql_error());	  $result = mysql_query($query);	  $nrows = mysql_num_rows($result); 	  $navegador = $_REQUEST['navegador'];	  if(!isset($navegador)) $navegador = 0; //numero de itens que aparecerá por página, se não houver uma variavel limite, o limite será 10	  $limite = $_REQUEST['limite']?$_REQUEST['limite']:10;	 	  $query = "SELECT * FROM processo WHERE id_empresa = $id_empresa AND contrato LIKE '%$contrato%'" OR die("FALHA AO BUSCAR".mysql_error());	 // $sql = "SELECT * FROM processo WHERE id_empresa = $id_empresa AND contrato = '$contrato'" OR die("FALHA AO BUSCAR".mysql_error());	  	 	  $sql .= " LIMIT $navegador,$limite";	  $resultado = mysql_query($sql) or die ("FALHA AO BUSCAR contratos".mysql_error());	  $i=0;

FALHA AO BUSCAR contratosVocê tem um erro de sintaxe no seu SQL próximo a 'LIMIT 0,10' na linha 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, ja descobri o erro, foi um descuido meu...em vez de colocar o Select em $sql ele estava sendo colocado em $queryDesculpem pelo incomodo, mas valeu pelas dicas....

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.