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)










