
Procurar Dentro Do Campo
#1
Posted 10/09/2003, 11:42
onde eu colocaria as palavras que eu quero que sejam procuradas e teria o resultado.
é + ou - assim: tenho alguns usuários cadastados.... quero saber quantos tem doutorado e quantos tem o 1º grau completo dai eu colocaria os diferentes níveis de intrução nesse select name - caixa suspensa e quando eu quisesse saber quem tem doutorado eu escolheria e o script faria a procura usando aquela palavra ( no caso o nivel de intrução )
Alguém pode me dar uma luz :light: :ok:
Eu desenvolvo alguns scripts mas... demoro muito para pensar na lógica dele ... de maneira que se alguém puder me dar umas dicas :ok:
T+
Luke
"A humanidade está perdendo seus maiores gênios... Aristóteles faleceu, Newton bateu as botas, Einstein morreu, e eu não tô passando muito bem hoje... "
#2
Posted 10/09/2003, 12:24
Não entendi mto bem o q deseja, mas vamos lá...
Suponhamos q o q vc queira é digitar numa caixa de texto (não sei se é isso q vc chama de caixa suspensa) o nível de instrução da pessoa. Suponhamos q vc digite na caixa o texto "doutorado". Então vc faz o script de destino fazer a busca da seguinte forma:
$busca=mysql_query("SELECT * FROM tabela WHERE nivel='$campo'",$con);
Neste exemplo eu estou considerando a tabela com o nome "tabela", o campo do nível de escolaridade com o nome "nivel" e que a os dados neste campo estejam EXATAMENTE como o q foi digitado, ou então nenhum registro irá ser retornado (pois existe a opção de você procurar por pedaços do texto dentro do campo, como procurar por "grau", e retornariam aqueles que tem o campo nivel="1 grau completo", ou nivel="2 grau completo", ou nivel="1 grau incompleto", ou qquer outro valor q tenha a palavra "grau", basta perguntar como q a gente explica).
Mas eu não entendi direito o q vc quer, realmente. Então diga se tem algo a ver com o q eu comecei a explicar, e explique direito onde está sua dúvida.
Um abraço,
Thales Medeiros.
#3
Posted 10/09/2003, 12:24
<? $conec; $bco; $conectou = 0; include "conexao.php"; if ($conectou) { $sql = "select * from SUA_TABELA where para = '$txt_para'"; $regsporpg = 10; // resultado por página if ($txt_tipo != "") $sql .= " and tipo = '$txt_tipo' "; if ($txt_bairro != "") $sql .= " and bairro = '$txt_bairro' "; if ($txt_dorm == "1") $sql .= " and dorm = 1 "; if ($txt_dorm == "5") $sql .= " and dorm >= 5 "; if ($txt_preco == "1") $sql .= " and preco between 100.00 and 200.00"; if ($sql2 != "") { $sql = urldecode($sql2); $sql = stripslashes($sql); } if ($pg == "") $pg = 1; $pg2 = ($pg - 1) * $regsporpg; $sql1 = $sql . " LIMIT $pg2, $regsporpg "; $res = mysql_query($sql1,$conec) or die (mysql_error()); if(mysql_num_rows($res)>0) { while ($dados = mysql_fetch_array($res)) { include "sua_pagina de_resultado.php"; } //fecha conteudo $res2 = mysql_query($sql,$conec) or die (mysql_error()); $qtdpgs = ceil((mysql_num_rows($res2) / $regsporpg)); while ($pagina < $qtdpgs) { $pagina = $pagina + 1; $sql2 = urlencode($sql); echo "<a href=".$PHP_SELF."?sql2=".$sql2."&pg=".$pagina."> $pagina </a> |"; } } else { echo "Nenhumencontrado nesse perfil."; echo "<br><a href='javascript:history.go(-1)'><< Voltar</a><br>"; } //fecha mysql_num_Rows } //fecha conectou ?>
#4
Posted 10/09/2003, 12:55
Blz Thales...Oi, Luke!
Não entendi mto bem o q deseja, mas vamos lá...
Suponhamos q o q vc queira é digitar numa caixa de texto (não sei se é isso q vc chama de caixa suspensa) o nível de instrução da pessoa. Suponhamos q vc digite na caixa o texto "doutorado". Então vc faz o script de destino fazer a busca da seguinte forma:$busca=mysql_query("SELECT * FROM tabela WHERE nivel='$campo'",$con);
Neste exemplo eu estou considerando a tabela com o nome "tabela", o campo do nível de escolaridade com o nome "nivel" e que a os dados neste campo estejam EXATAMENTE como o q foi digitado, ou então nenhum registro irá ser retornado (pois existe a opção de você procurar por pedaços do texto dentro do campo, como procurar por "grau", e retornariam aqueles que tem o campo nivel="1 grau completo", ou nivel="2 grau completo", ou nivel="1 grau incompleto", ou qquer outro valor q tenha a palavra "grau", basta perguntar como q a gente explica).
Mas eu não entendi direito o q vc quer, realmente. Então diga se tem algo a ver com o q eu comecei a explicar, e explique direito onde está sua dúvida.
Um abraço,
Thales Medeiros.
kara seguinte... serei mais especifico...
quando vc vai editar uma mensagem ( aqui no fórum mesmo ) pois é ... tem a opção de formatação onde vc escolhe o tamanho da fonte ....certo... eu quero algo daquele jeito....
já existe alguns valores definidos ( no meu caso o nivel de intrução do user ) mas aqui no fórum ( na parte de edição de msg ) as opções definidas como tamanho da fonte cor etc. tmb ja estão definidos ....
sakou?!
eu conheço ( aprendi ) o nome disso como select name.... pode ser que seja outro .... mas vc pode me ajudar!!
T+
LuKe
"A humanidade está perdendo seus maiores gênios... Aristóteles faleceu, Newton bateu as botas, Einstein morreu, e eu não tô passando muito bem hoje... "
#5
Posted 10/09/2003, 13:41

Bem... Já q os níveis de instrução já estão pré-definidos, então é mais tranqüilo. Vc vai simplesmente criar o SELECT (sim, é esse mesmo o nome, ou então caixa de seleção, ou combobox, ou combo, ou menu drop-down, ou menu de seleção... : ) com os dados desejados e fazer a busca de acordo com a seleção.
Mas eu não sei o q mais vc quer q a pessoa selecione, além do nível de instrução. Pois talvez vc queira digitar algum nome E selecionar seu nível de instrução. Não sei! Mas se vc deseja somente selecionar no SELECT o nível desejado e fazer a busca pelos nomes cadastrados com tal nível, então vc tem 2 alternativas. Uma é buscar os níveis do próprio banco, onde uma consulta pode exibir todos os níveis diferentes cadastrados e jogar estes dados dentro do SELECT. Vou te dar um exemplo:
<? $con=mysql_connect("host", "usuário", "senha"); mysql_select_db("banco", $con); ?><html><head><title>Título</title></head> <body> <form method=post action=<?=$PHP_SELF?>> <select name=nivel> <? $busca=mysql_query("SELECT DISTINCT nivel FROM tabela", $con); while ($coluna=mysql_fetch_array($busca)) echo "<option value=\"$coluna[0]\">$coluna[0]</option>\r\n"; ?></select> </form> <input type=submit value=BUSCAR> <? if (isset($nivel)) { echo "<br><br>Os nomes com este nível são:<br><br>"; $busca=mysql_query("SELECT nome FROM tabela WHERE nivel='$nivel'", $con); while ($coluna=mysql_fetch_array($busca)) echo "$coluna[0]<br>"; } ?></body></html>
A outra solução é vc não buscar os níveis do banco, mas já criar os níveis manualmente. Por exemplo:
<? $con=mysql_connect("host", "usuário", "senha"); mysql_select_db("banco", $con); ?><html><head><title>Título</title></head> <body> <form method=post action=<?=$PHP_SELF?>> <select name=nivel> <option value="1 Grau Completo">1 Grau Completo</option> <option value="1 Grau Incompleto">1 Grau Incompleto</option> <option value="2 Grau Completo">2 Grau Completo</option> <option value="2 Grau Incompleto">2 Grau Incompleto</option> <option value="Mestrado">Mestrado</option> <option value="Doutorado">Doutorado</option> </select> <input type=submit value=BUSCAR> </form> <? if (isset($nivel)) { echo "<br><br>Os nomes com este nível são:<br><br>"; $busca=mysql_query("SELECT nome FROM tabela WHERE nivel='$nivel'", $con); while ($coluna=mysql_fetch_array($busca)) echo "$coluna[0]<br>"; } ?></body></html>
Espero ter ajudado!
Um abraço,
Thales Medeiros.
#6
Posted 10/09/2003, 14:56
kara era exatamente o que eu queria...vou testar e adequar as minhas necessidades..
<?
$con=mysql_connect("host", "usuário", "senha");
mysql_select_db("banco", $con);
?><html><head><title>Título</title></head>
<body>
<form method=post action=<?=$PHP_SELF?>>
<select name=nivel>
<option value="1 Grau Completo">1 Grau Completo</option>
<option value="1 Grau Incompleto">1 Grau Incompleto</option>
<option value="2 Grau Completo">2 Grau Completo</option>
<option value="2 Grau Incompleto">2 Grau Incompleto</option>
<option value="Mestrado">Mestrado</option>
<option value="Doutorado">Doutorado</option>
</select>
<input type=submit value=BUSCAR>
</form>
<?
if (isset($nivel)) {
echo "<br><br>Os nomes com este nível são:<br><br>";
$busca=mysql_query("SELECT nome FROM tabela WHERE nivel='$nivel'", $con);
while ($coluna=mysql_fetch_array($busca))
echo "$coluna[0]<br>";
}
?></body></html>
Brigadão kara! :ok: :ok:

"A humanidade está perdendo seus maiores gênios... Aristóteles faleceu, Newton bateu as botas, Einstein morreu, e eu não tô passando muito bem hoje... "
#7
Posted 11/10/2003, 11:30
Eu tbm precisava desse codigo pra separar por categorias, foi util demais... mas só to conseguindo fazer mostrar o codigo do usuario cadastrado quando seleciono a categoria, como faço pra mostrar os outros campos da tabela?
Tipo...nome, to usando esse codigo....
<? $db = mysql_connect("localhost", "danilo", "******"); $basedados = mysql_select_db("dados"); ?><html><head><title>Título</title></head> <body> <form method=post action=<?=$PHP_SELF?>> <select name=categoria> <option value="Homem">Homem</option> <option value="Mulher">Mulher</option> <option value="2 Grau Completo">2 Grau Completo</option> <option value="2 Grau Incompleto">2 Grau Incompleto</option> <option value="Mestrado">Mestrado</option> <option value="Doutorado">Doutorado</option> </select> <input type=submit value=BUSCAR> </form> <? if (isset($categoria)) { echo "<br><br>Os nomes com este nível são:<br><br>"; $result=mysql_query("SELECT * FROM dados WHERE categoria='$categoria'", $db); while ($row=mysql_fetch_array($result)) echo "$row[0]<br>"; } ?></body></html>
Agora no meu outro arquivo que faço a separaçao ta assim a linha select e while....
$result = mysql_query("SELECT * FROM dados WHERE categoria ='Homem'" , $db); while ($row = mysql_fetch_array($result)) { $categoria[] = $row["categoria"]; $codigo[] = $row["codigo"]; $nome[] = $row["nome"]; $telefone[] = $row["telefone"]; $datanascimento[] = $row["datanascimento"]; $foto[] = $row["foto"]; $site[] = $row["site"]; } ?>
E depois uso uns html pra mostrar os dados em forma de tabela usando
<? echo $datanascimento[$qntd]; ?>.... que no meu ta normal, mas quando tento usar o codigo com essa opcao de select da pau...
danilo@camphost.com.br
CAMPHOST - 1º MES GRATIS EM QUALQUER PLANO! HOSPEDAGEM WEB
QUER PATROCINIO FREE? ENTRE EM CONTATO
ICQ: 7695319
MSN: danilodepolli@bol.com.br
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)