Jump to content


Photo

Problema Ao Buscar Informações No Banco!


  • Faça o login para participar
2 replies to this topic

#1 suder

suder

    Novato no fórum

  • Usuários
  • 3 posts
  • Sexo:Masculino
  • Localidade:Passo Fundo - RS

Posted 20/10/2009, 07:46

Olá, sou novato no php, e sou estagiário de uma universidade, preciso fazer otimizar uma pesquisa no sistema aonde trabalho.
Atualmente a pesquisa só está sendo efetuada se eu digitar a espécie a ser pesquisada (quando eu entrei no estágio isso ja estava assim), mas preciso pesquisar tanto pela espécie quanto pelo código cadastrado no banco.

Irei postar o script:

while($row = @mysql_fetch_array($limite)){
  $linhas .= '<tr>';
  foreach($campos as $campo){
	if($campo == 'colecoes.coditem')
	 $linhas .= "<td>".$row[sigladiv].$row[coditem]."</td>";
	elseif($campo == 'colecoes.dtalt')
	 $linhas .= "<td>".ExibirData($row[@substr($campo, @strpos($campo, ".")+1, @strlen($campo))])."</td>";
	else
	 $linhas .= "<td>".$row[@substr($campo, @strpos($campo, ".")+1, @strlen($campo))]."</td>";
  }
  $linhas .= '
  <td width="15%" align="center">
   <a href="principal.php?pgarea='.$pgarea.'&divisao='.$divisao.'&acao=visualizar&id='.$row[$id].'">Visualizar</a>
   <a target="_blank" href="principal.php?pgarea='.$pgarea.'&divisao='.$divisao.'&acao=alterar&id='.$row[$id].'">Alterar</a>
   <a href="principal.php?pgarea='.$pgarea.'&divisao='.$divisao.'&acao=excluir&id='.$row[$id].'" onClick="return ConfirmaExclusao()">Excluir</a>
  </td>';
  $linhas .= '</tr>';
 $aux++;
 }
  echo '
  <form method="get" action="principal.php">
   <span style="left:30;position:absolute">
	<img src="imagens/busca.png" border="0"> Busca rápida:
	<input name="parametro" type="text" size="10" value="'.$parametro.'">
	<input type="submit" name="sbEnviar" value="Buscar" class="botao">
	<input type="hidden" name="pgarea" value="'.$pgarea.'">
	<input type="hidden" name="divisao" value="'.$divisao.'">
   </span>
   <span style="right:30;position:absolute">
	<a href="#voltar" onClick="java script:history.go(-1)" title="Volta a página anterior"><img src="imagens/voltar.png" border="0"></a>
	<a target="_blank" href="principal.php?pgarea='.$pgarea.'&divisao='.$divisao.'&acao=adicionar"><img src="imagens/add.png" border="0"></a>
	<a href="#voltar" onClick="java script:window.self.location= \'\'" title="Atualiza a página e apaga dados digitados"><img src="imagens/refresh.png" border="0"></a>
   </span>
  </form><br>';
 if(!$linhas)
  echo '<center>Nenhum dado nesta lista.</center>';
 
 elseif($parametro)
  echo 
  '<center><b>Busca por "'.$parametro.'"</b></center><br>
  <table>
   <tr>
	'.$colunas.'
	<td class="topo_tabela">Ações</td>
   </tr>'
   .$linhas.
  '</table>';
   
 else
  echo 
  $pg->GetMenu().'
  <table>
   <tr>
	'.$colunas.'
	<td class="topo_tabela">Ações</td>
   </tr>'
   .$linhas.
  '</table>'.
  $pg->GetMenu();
}

Se alguém puder me ajudar, obrigado!

#2 Maykel Esser

Maykel Esser

    Super Veterano

  • Usuários
  • 1536 posts
  • Sexo:Masculino
  • Localidade:Curitiba - PR

Posted 20/10/2009, 07:54

onde está sua consulta ao banco de dados? É lá que a mágica acontece, e você não postou ^_^

Se este post lhe ajudou, ajude o fórum também. Use a reputação de mensagens! add.png


#3 suder

suder

    Novato no fórum

  • Usuários
  • 3 posts
  • Sexo:Masculino
  • Localidade:Passo Fundo - RS

Posted 20/10/2009, 08:08

hehehe, desculpee!

está aqui:
//Listar
}else{

	$cols = array("Código", "Espécie", "Última Alteração");
	$campos = array('colecoes.coditem', 'especie.descesp', 'colecoes.dtalt');
	$sql = "SELECT * FROM colecoes, especie, divisao WHERE colecoes.codesp = especie.codesp AND colecoes.coddiv = divisao.coddiv AND colecoes.coddiv = '$divisao'";
	$id = "id_bot";
	$order_by = "colecoes.coditem";

	$pg = new Paginacao();
	$pg->SetEndereco('principal.php?pgarea='.$pgarea.'&divisao='.$divisao);
	$pg->SetLimite(20);
	$pg->SetSql("SELECT null FROM colecoes, especie WHERE colecoes.codesp = especie.codesp AND coddiv = '$divisao'");

		
	if (!$parametro){
		$limite = @mysql_query("$sql ORDER BY $order_by ".$pg->GetLimite());
	}else{
		$tam = @strlen($parametro) - 1;
		$param = @strtoupper(@substr($parametro, 0, 1)) . @substr($parametro, 1, $tam);
		
		$limite = @mysql_query("SELECT * FROM colecoes, especie, divisao
								WHERE colecoes.codesp = especie.codesp AND colecoes.coddiv = divisao.coddiv AND colecoes.coddiv = '$divisao' AND
									especie.descesp LIKE '%$parametro%'
								ORDER BY $order_by");
				echo mysql_error();
	}
	foreach($cols as $col_name){
		if($col_name == "Código")
			$colunas .= '<td class="topo_tabela" width="10%">'.$col_name.'</td>';
		else
			$colunas .= '<td class="topo_tabela">'.$col_name.'</td>';
	}
e dai segue oque postei acima!
obrigado!




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq