Ir para conteúdo

Arquivado

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

Raphael Zago

Filtro mysql e php

Recommended Posts

Ola Amigos boa tarde,

 

Preciso fazer uns filtros no meu codigo criando por exemplo uma variavel estado e fazendo com que mostre apenas quem eu selecionar no meu <select> segue abaixo a pagina que visualiza os inserts do formulario.

 

obrigado.

<body>
<div id="header">
<label>Banco de Curriculos</label><br /><br />
</div>
<form action="filtro.php" method="post" enctype="multipart/form-data">
<select name="Estado">
					<option>Selecione...</option>
					<option value="AC">AC</option>
					<option value="AL">AL</option>
					<option value="AP">AP</option>
					<option value="AM">AM</option>
					<option value="BA">BA</option>
					<option value="CE">CE</option>
					<option value="ES">ES</option>
					<option value="DF">DF</option>
					<option value="MA">MA</option>
					<option value="MT">MT</option>
					<option value="MS">MS</option>
					<option value="MG">MG</option>
					<option value="PA">PA</option>
					<option value="PB">PB</option>
					<option value="PR">PR</option>
					<option value="PE">PE</option>
					<option value="PI">PI</option>
					<option value="RJ">RJ</option>
					<option value="RN">RN</option>
					<option value="RS">RS</option>
					<option value="RO">RO</option>
					<option value="RR">RR</option>
					<option value="SC">SC</option>
					<option value="SP">SP</option>
					<option value="SE">SE</option>
					<option value="TO">TO</option>
			  </select>
<button type="submit" name="filtro">Enviar</button>
</form>

<div class="cx">
	<table  id="mytable" cellspacing="0">
    <tr>
    <td>Nome</td>
    <td>Idade</td>
    <td>Sexo</td>
    <td>Cidade</td>
    <td>Estado</td>
    <td>Area</td>
    <td>Formação</td>
    <td>Observações</td>
    <td>Anexo</td>
    </tr>
    <?php
	$sql="SELECT * FROM curriculos";
	$result_set=mysql_query($sql);
	while($row=mysql_fetch_array($result_set))
	{
		?>
        <tr>
	<td><?php echo $row['Nome'] ?></td>
	<td><?php echo $row['Idade'] ?></td>
	<td><?php echo $row['Sexo'] ?></td>
	<td><?php echo $row['Cidade'] ?></td>
	<td><?php echo $row['Estado'] ?></td>
	<td><?php echo $row['Area'] ?></td>
	<td><?php echo $row['Formacao'] ?></td>
	<td><?php echo $row['Obs'] ?></td>
        <td><a href="uploads/<?php echo $row['file'] ?>" target="_blank">view file</a></td>
        </tr>
        <?php
	}
	?>
    </table>



    
</div>
</body>

Compartilhar este post


Link para o post
Compartilhar em outros sites

basta verificar se existe o POST de estados e concatenar um WHERE no seu sql.

if(!empty($_POST['Estado']){
    $estado = $_POST['Estado'];  
    $sql .= "WHERE estado = '$estado'; ";
}

:)

Compartilhar este post


Link para o post
Compartilhar em outros sites

basta verificar se existe o POST de estados e concatenar um WHERE no seu sql.

if(!empty($_POST['Estado']){
    $estado = $_POST['Estado'];  
    $sql .= "WHERE estado = '$estado'; ";
}

:)

Ola Ruan, Agradeço pela ajuda, Estou tentando colocar isso no meu codigo porem da erro, devo colocar acima da ultima tag php ? ou fazer um if else ? obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloca isso depois de montar sua sql

$sql="SELECT * FROM curriculos";

e antes de executar ela

$result_set=mysql_query($sql);

assim:

 
$sql="SELECT * FROM curriculos";
if(!empty($_POST['Estado']){
    $estado = $_POST['Estado'];  
    $sql .= "WHERE estado = '$estado'; ";
}
$result_set=mysql_query($sql);

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloca isso depois de montar sua sql

$sql="SELECT * FROM curriculos";

e antes de executar ela

$result_set=mysql_query($sql);

assim:

 
$sql="SELECT * FROM curriculos";
if(!empty($_POST['Estado']){
    $estado = $_POST['Estado'];  
    $sql .= "WHERE estado = '$estado'; ";
}
$result_set=mysql_query($sql);

 

Ruan, ele deu um erro de sintaxe, percebvi que faltava um ) na lista if(!empty($_POST['Estado'])){ ai nao deu mais erro, porem ele nao retorna nada na variavel Estado

Compartilhar este post


Link para o post
Compartilhar em outros sites

para quem quiser a solução esta ai o codigo, da forma que eu consegui, na opiniao de voces que manjam mais, esta correto ? funcionar funciona kkkk

<?php
include_once 'dbconfig.php';
?>
<html>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<style>
body {
	font: normal 11px auto "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
	color: #4f6b72;
	background: #E6EAE9;
}

a {
	color: #c75f3e;
}

#mytable {
	width: 1200px;
	padding: 0;
	margin: 0;
}

caption {
	padding: 0 0 5px 0;
	width: 700px;	 
	font: italic 11px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
	text-align: right;
}

th {
	font: bold 11px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
	color: #4f6b72;
	border-right: 1px solid #C1DAD7;
	border-bottom: 1px solid #C1DAD7;
	border-top: 1px solid #C1DAD7;
	letter-spacing: 2px;
	text-transform: uppercase;
	text-align: left;
	padding: 6px 6px 6px 12px;
	background: #CAE8EA url(images/bg_header.jpg) no-repeat;
}

th.nobg {
	border-top: 0;
	border-left: 0;
	border-right: 1px solid #C1DAD7;
	background: none;
}

td {
	border-right: 1px solid #C1DAD7;
	border-bottom: 1px solid #C1DAD7;
	background: #fff;
	padding: 6px 6px 6px 12px;
	color: #4f6b72;
}


td.alt {
	background: #F5FAFA;
	color: #797268;
}

th.spec {
	border-left: 1px solid #C1DAD7;
	border-top: 0;
	background: #fff url(images/bullet1.gif) no-repeat;
	font: bold 10px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
}

th.specalt {
	border-left: 1px solid #C1DAD7;
	border-top: 0;
	background: #f5fafa url(images/bullet2.gif) no-repeat;
	font: bold 10px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
	color: #797268;
}
</style>
</head>
<body>
<div id="header">
<label>Banco de Curriculos</label><br /><br />
</div>
<form  method="post" enctype="multipart/form-data">
<select name="Estado">
					<option value="">Todos</option>
					<option value="AC">AC</option>
					<option value="AL">AL</option>
					<option value="AP">AP</option>
					<option value="AM">AM</option>
					<option value="BA">BA</option>
					<option value="CE">CE</option>
					<option value="ES">ES</option>
					<option value="DF">DF</option>
					<option value="MA">MA</option>
					<option value="MT">MT</option>
					<option value="MS">MS</option>
					<option value="MG">MG</option>
					<option value="PA">PA</option>
					<option value="PB">PB</option>
					<option value="PR">PR</option>
					<option value="PE">PE</option>
					<option value="PI">PI</option>
					<option value="RJ">RJ</option>
					<option value="RN">RN</option>
					<option value="RS">RS</option>
					<option value="RO">RO</option>
					<option value="RR">RR</option>
					<option value="SC">SC</option>
					<option value="SP">SP</option>
					<option value="SE">SE</option>
					<option value="TO">TO</option>
			  </select>
			  <select name="Area">
						  <option value="">Todos</option>
						  <option value="RH">Recursos Humanos</option>
						  <option value="QUALIDADE">Qualidade</option>
						  <option value="PROCESSO">Processo</option>
						  <option value="LOGISTICA">Logística</option>
						  <option value="PRODUCAO">Produção</option>
						  <option value="SEGURANCA DE TRABALHO">Segurança de Trabalho</option>
						  <option value="COMPRAS">Compras</option>
						  <option value="TI">TI</option>
						  <option value="FINANCEIRO">Financeiro</option>
						  <option value="MANUTENCAO">Manutenção</option>
						  <option value="LIMP.TECNICA">Limp. Técnica</option>
						<select />
													<select name="Formacao">	  
							<option value="">Todos</option>
							<option value="Ensino Fundamental completo">Ensino Fundamental completo</option>
							<option value="Ensino Fundamental incompleto">Ensino Fundamental incompleto</option>
							<option value="Ensino Médio completo">Ensino Médio completo</option>
							<option value="Ensino Superior cursando">Ensino Superior cursando</option>
							<option value="Ensino Superior completo">Ensino Superior completo</option>
							<option value="Técnico cursando">Técnico cursando</option>
						  <option value=Técnico completo">Técnico completo</option>
						</select>
 <button type="submit" name="filtro">Enviar</button>
 <button type="submit" name="filtro">Limpa Filtro</button>
</form>

<div class="cx">
	<table  id="mytable" cellspacing="0">
    <tr>
    <td>Nome</td>
    <td>Idade</td>
    <td>Sexo</td>
    <td>Cidade</td>
    <td>Estado</td>
    <td>Area</td>
    <td>Formação</td>
    <td>Observações</td>
    <td>Anexo</td>
    </tr>
    <?php
     $estado      = $_POST['Estado'];
     $area        = $_POST['Area'];
     $formacao        = $_POST['Formacao'];


	$sql="SELECT * FROM curriculos WHERE Estado LIKE'%$estado%'and Area like'$area%'and Formacao LIKE '%$formacao%'";
	
	$result_set=mysql_query($sql);
	while($row=mysql_fetch_array($result_set))
	{
		?>
        <tr>
	<td><?php echo $row['Nome'] ?></td>
	<td><?php echo $row['Idade'] ?></td>
	<td><?php echo $row['Sexo'] ?></td>
	<td><?php echo $row['Cidade'] ?></td>
	<td><?php echo $row['Estado'] ?></td>
	<td><?php echo $row['Area'] ?></td>
	<td><?php echo $row['Formacao'] ?></td>
	<td><?php echo $row['Obs'] ?></td>
        <td><a href="uploads/<?php echo $row['file'] ?>" target="_blank">view file</a></td>
        </tr>
        <?php
	}
	?>
    </table>



    
</div>
</body>
</html>

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.