Ir para conteúdo

Arquivado

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

ThiagoLimah

Problemas com pesquisa

Recommended Posts

Olá pessoal, estou encontrando uma certa dificuldade em concluir um trabalho, onde preciso efetuar um filtro na hora da pesquisa em um banco de dados de currículos.

 

O meu código não está acusando nenhum erro mas simplesmente lista alguns currículos e outros não, e por alguns campos ele não busca.

 

Poderiam analisar meu código e ver se acham algum erro, pois preciso entregar esse trabalho =[

<?php
				if((!isset($_GET['sexo'])) || (!isset($_GET['escolaridade'])) || (!isset($_GET['cidade']))){
					header('Location: pesquisar.php');
				}

				$porPagina = 20;

				$sexo = trim($_GET['sexo']);
				$escolaridade = trim($_GET['escolaridade']);
				$idadeI = (int)$_GET['idadeI'];
				$idadeF = (int)$_GET['idadeF'];
				$cidade = trim($_GET['cidade']);
				$bairro = trim($_GET['bairro']);

				$sql = "SELECT COUNT(*) AS total FROM curriculos WHERE ((sexo LIKE '%".$sexo."%') OR ('%".$sexo."%')) AND 
				((escolaridade LIKE '%".$escolaridade."%') OR ('%".$escolaridade."%')) AND
					(idade between '$idadeI' and '$idadeF') AND ((cidade LIKE '%".$cidade."%') OR ('%".$cidade."%')) AND 
					((bairro LIKE '%".$bairro."%') OR ('%".$bairro."%'))";
				$query = mysql_query($sql);
				$total = mysql_result($query, 0, 'total');
				$paginas = (($total % $porPagina) > 0) ? (int)($total / $porPagina) + 1 : ($total / $porPagina);

				if(isset($_GET['pag'])){
					$pagina = (int)$_GET['pag'];
				}
				else{
					$pagina = 1;	
				}
				$pagina = max(min($paginas, $pagina), 1);
				$inicio = ($pagina - 1) * $porPagina;

				$sql = "SELECT * FROM curriculos WHERE ((sexo LIKE '%".$sexo."%') OR ('%".$sexo."%')) AND 
				((escolaridade LIKE '%".$escolaridade."%') OR ('%".$escolaridade."%')) AND
					(idade between '$idadeI' and '$idadeF') AND ((cidade LIKE '%".$cidade."%') OR ('%".$cidade."%')) AND 
					((bairro LIKE '%".$bairro."%') OR ('%".$bairro."%')) ORDER BY 'nome' DESC LIMIT ".$inicio.", ".$porPagina;
				$query = mysql_query($sql);

				while($linha = mysql_fetch_array($query)){
					$cid = $linha['cid'];
					$nome = $linha['nome'];
					$sexo = $linha['sexo'];
					$cargoPretendido = $linha['cargoPretendido'];
					$nascimento = $linha['nascimento'];
					$idade = calculaIdade($nascimento);
			?>
 				<tr>
   				<td align="center"><?php echo $cid; ?></td>
   				<td align="center"><?php echo $nome; ?></td>
   				<td align="center"><?php echo $idade; ?> anos</td>
  				  	<td align="center"><?php echo $cargoPretendido; ?></td>
  				  	<td align="center"><?php echo $sexo; ?></td>
   				<td align="center"> </td>
 				</tr>
               <?php
				}
				echo "<p>Resultados ".min($total, ($inicio + 1))." - ".min($total, ($inicio + $porPagina))." de ".$total."
					resultados encontrados para ".$bairro." ".$cidade." ".$escolaridade."</p>";
			?>
		</table>
           <div id="paginador">
           	<?php
				if($total > 0){
					for($n = 1; $n <= $paginas; $n++){
						echo '<a href="?sexo='.$sexo.'&escolaridade='.$escolaridade.'&idadeI='.$idadeI.'&idadeF='.$idadeF.'&cidade='.$cidade.'&bairro='.$bairro.'"&pag='.$n.'">'.$n.'</a>  ';
					}
				}
			?>
           </div>

Compartilhar este post


Link para o post
Compartilhar em outros sites

habilite as mensagens de erro:

http://forum.imasters.com.br/index.php?/topic/375800-orientacoes-para-uma-boa-participacao/

 

dê um echo em $sql e analise a string retornada.

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.