fazer um filtro em PHP
pessoal, estou com uma agenda simples, mas queria fazer um filtro pela operadora de celular das pessoas cadastradas, segue o codigo:
<?php
include_once ("conexao.php");
?>
<!DOCTYPE html>
<html lang="pt-br">
<head>
<title>Projeto</title>
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css">
<style type="text/css">
@import url("css/main.css");
</style>
</head>
<body>
<div id="cadastro">
<fieldset>
<legend>Listar Contatos</legend>
<form method="GET" action="listar.php">
<select name="txtOperadora" id="id">
<option value="0">-- Selecione --</option>
<?php
if($_GET["txtOperadora"]){
$id = $_GET["txtOperadora"];
} else{
$id = "0";
}
$SQL = "SELECT * FROM contatos ORDER BY operadora ASC";
$query = mysql_query($SQL, $conn);
while($exibir = mysql_fetch_array($query)){
?>
<option value="<?php echo $exibir["id"];?>"<?php echo($exibir["id"] == $id ? "selected='selected'" : "")?>><?php echo $exibir["operadora"];?></option>
<?php }?>
</select>
<input type="submit" value="Filtrar"/>
<input type="button" value="Voltar" onClick="history.go(-1)">
</form>
<ul>
<?php
$SQL = "SELECT * FROM contatos";
if(isset($_GET["txtOperadora"])){
if(is_numeric($_GET["txtOperadora"])){
$SQL .= " WHERE id =".$_GET["txtOperadora"];
}
}
$query = mysql_query($SQL, $conn);
while($exibir = mysql_fetch_array($query)){
?>
<li><?php echo $exibir["id"]?> - <?php echo $exibir["nome"]?> - <?php echo $exibir["email"]?> - <?php echo $exibir["operadora"]?> - <?php echo $exibir["endereco"]?> - <?php echo $exibir["cidade"]?> - <?php echo $exibir["estado"]?> - <?php echo $exibir["sexo"]?> - <?php echo $exibir["idade"]?></li>
<?php
}
?>
</ul>
</fieldset>
</div>
</body>
Marcio Araujo
Curtidas 0
Respostas
Marcio Araujo
18/12/2012
pessoal, me ajudem aew, por favor!!!
GOSTEI 0
Roniere Almeida
18/12/2012
alguem sabe?
GOSTEI 0
Marcio Araujo
18/12/2012
eu to precisando muito disso!!!
GOSTEI 0
Claudia Nogueira
18/12/2012
Está com dúvida em qual parte do código?
Tem dois selects na tabela contatos, isso significa que não tem cadastro de operadora?
Tem dois selects na tabela contatos, isso significa que não tem cadastro de operadora?
GOSTEI 0
Marcio Araujo
18/12/2012
tem, mas eu queria fazer um filtro, tipo, é inserido os dados das pessoas, eu queria filtrar pela operadora, independente da forma que esteja escrito: OI, oi, Oi, Tim, TIM, Tim, tim...mas o problema, é que apresenta todas as operadoras repetidas!!!
obrigado por responder.
obrigado por responder.
GOSTEI 0
Marcio Araujo
18/12/2012
e aew Claudiadnh, sabe qual script SQL devo usar???
GOSTEI 0
Flávio Ferreira.
18/12/2012
Selects exemplo:
select * from clientes where operadora like '{$nome_da_operadora}%'
ou se quiser exatamente como está escrito
select * from clientes where operadora like '{$nome_da_operadora}'
se o seu banco de dados for case sensitive, coloca algo como
select * from clientes where lower(operadora) like lower('{$nome_da_operadora}') -- minusculo
select * from clientes where upper(operadora) like upper('{$nome_da_operadora}') -- maiusculo
select * from clientes where operadora like '{$nome_da_operadora}%'
ou se quiser exatamente como está escrito
select * from clientes where operadora like '{$nome_da_operadora}'
se o seu banco de dados for case sensitive, coloca algo como
select * from clientes where lower(operadora) like lower('{$nome_da_operadora}') -- minusculo
select * from clientes where upper(operadora) like upper('{$nome_da_operadora}') -- maiusculo
GOSTEI 0