Ir para conteúdo
Fórum Script Brasil
  • 0

Busca Simples


hsimberg

Pergunta

não entendo muita coisa de PHP com banco de dados, mas quero fazer por mim mesmo uma busca, simples, sendo...

O primeiro arquivo sendo o campo para digitar a palavra e assim pesquisar

busca.php

<html>

<head>

<title>Pesquisa no MYSQL</title>

</head>

<body>

<form action="pesquisa.php" name="pesquisa" method="post">

<input type="text" name="text" >

<input type="submit" name="Submit" value="Buscar">

</form>

</body>

</html>

e pesquisa.php

<?php require "conecta.php";  ?>

<?

$sql = mysql_query("SELECT * FROM wjt_mod_data ORDER BY ASC") or print(mysql_error());

?>

O arquivo conecta está os meus dados e passwords para o banco de dados, eu sei que está certo porque funciona em outras coisas que fiz aqui.

wjt_mod_data é minha Data Base.

Acho que entenderam, quero que a palavra que se digita no campo de busca seja pesquisada no banco de dados e mostrada....eu sei que isto que eu fiz está totalmente errado, mas tentei comecar com o que eu sei...alguém pode me dar a lógica, ou uma idéia...

Obrigado

Link para o comentário
Compartilhar em outros sites

14 respostass a esta questão

Posts Recomendados

  • 0

ve se é isso

include "conecta.php";


$seu_campo = TRIM($seu_campo);

$query = mysql_query("SELECT * FROM sua_tabela WHERE LOCATE('$seu_campo',seu_campo)>0  ORDER BY seu_campo");

$linhas = mysql_num_rows($query);

if($linhas == 0){

echo "Nenhum seu_campo encontrado";
exit();
}
else{

while($row = mysql_fetch_array($query)){

$seu_campo     = $row["seu_campo"];

if($linhas %2 == 0){

$cor = "#E2EFFE";
}
else{

$cor = "#E2EFFE";
}

echo "

  <tr bgcolor=\"$cor\">
    <td>&nbsp;<font size='1' face='Arial, Helvetica, sans-serif'>$seu_campo</font></td>
  </tr>";


}
}
?>

Qualquer coisa posta ai espero ter te ajudado

Link para o comentário
Compartilhar em outros sites

  • 0

Ta...aparentemente funciona....mas uma coisa não entendi...

o seu_campo seria a variavel que passaria do meu primeiro arquivo, o campo que digita a palavra que quer ser procurada

por exemplo

o name do primeiro campo será palavra

ai eu substituo no seu_campo pela palavra palavra ?

Por que não ta dando certo assim como ta ai, eu mudei a sua_tabela pelo nome da minha tabela...mas pelo que entendi não ta dando certo porque não chega o que eu digitei ai...deu pra entender?

Obrigado

Hsimberg

Link para o comentário
Compartilhar em outros sites

  • 0

É assim no seu form

<html>
<head>
<title>Pesquisa no MYSQL</title>
</head>

<body>
<form action="pesquisa.php" name="pesquisa" method="post">
<input type="text" name="palavra" >
<input type="submit" name="Submit" value="Buscar">
</form>
</body>
</html>
e no código pesquisa.php
include "conecta.php";


$palavra = TRIM($palavra);

$query = mysql_query("SELECT * FROM sua_tabela WHERE LOCATE('$palavra',palavra)>0  ORDER BY palavra");

$linhas = mysql_num_rows($query);

if($linhas == 0){

echo "Nenhuma palavra encontrada";
exit();
}
else{

while($row = mysql_fetch_array($query)){

$palavra     = $row["palavra"];

if($linhas %2 == 0){

$cor = "#E2EFFE";
}
else{

$cor = "#E2EFFE";
}

echo "

 <tr bgcolor=\"$cor\">
   <td>&nbsp;<font size='1' face='Arial, Helvetica, sans-serif'>$palavra</font></td>
 </tr>";


}
}
?>

Essa consulta só vai funcionar se o campo do banco de dados estiver com esse mesmo nome palavra, no form tambem teria que estar com esse mesmo nome,

se o seu campo do banco de dados onde você busca estiver vazio não vai retornar nada.

se o nome no banco de dados estiver outro nome, por exemplo teste, você troca os campos palavra pelo campo do banco de dados que no exemplo é teste.

Qualquer coisa posta ai

Link para o comentário
Compartilhar em outros sites

  • 0

<?

include "conecta.php";

$palavra = TRIM($palavra);

$query = mysql_query("SELECT * FROM 'wjt_mod_data' WHERE LOCATE('$palavra',palavra)>0  ORDER BY ASC");

$linhas = mysql_num_rows($query);

if($linhas == 0){

echo "Nenhuma palavra encontrada";

exit();

}

else{

while($row = mysql_fetch_array($query)){

$palavra     = $row["palavra"];

if($linhas %2 == 0){

$cor = "#E2EFFE";

}

else{

$cor = "#E2EFFE";

}

echo "

<tr bgcolor=\"$cor\">

  <td>&nbsp;<font size='1' face='Arial, Helvetica, sans-serif'>$palavra</font></td>

</tr>";

}

}

?>

Ai está todo o codigo...ta funcionando em si, mas não acha as palavras...o que pode estar errado...quanto ao que MauF escreveu

Essa consulta só vai funcionar se o campo do banco de dados estiver com esse mesmo nome palavra, no form tambem teria que estar com esse mesmo nome,

Eu não entendi muito bem...desculpa...

Ps: se precisar do endereco: http://wjt.schoenstatt.de/en/busca.php

Link para o comentário
Compartilhar em outros sites

  • 0

Ainda não está funcionando...voce me disse acima que os nomes devem ser iguais,....

se o nome no banco de dados estiver outro nome, por exemplo teste, você troca os campos palavra pelo campo do banco de dados que no exemplo é teste.

bom, palavra é a palavra que eu utilizei para ser pesquisada, mas minha tabela no banco de dados chama-se wjt_mod_data, então eu deveria trocar o nome palavra pelo nome wjt_mod_data?

E quanto a funcao está certa mesmo? é locate? porque eu só uso e conheco LIKE, obrigado

Link para o comentário
Compartilhar em outros sites

  • 0

Haha, desculpa, to me confundindo todo, vamos lá

minha tabela chama-se: wjt_mod_data

Database db96931011 - table wjt_mod_data running on localhost

E eu não entendi muito bem as outras coisas, então to mandando um screenshot...rs

la vai...

user posted image

Muito Obrigado!

Link para o comentário
Compartilhar em outros sites

  • 0

O que ainda pode estar errado?

Vou postar o codigo completo, ta bem simplificado.

Arquivo busca.php

<html>

<head>

<title>Banco de dados</title>

</head>

<body>

<form action="pesquisa.php" name="campo" method="post">

<input type="text" name="campo" >

<input type="submit" name="Submit" value="Enviar">

</form>

</body>

</html>

E aqui o pesquisa.php

<? 

include "conecta.php";  //funcionando

$campo = TRIM($campo); 

$query = mysql_query("SELECT * FROM wjt_mod_data WHERE LOCATE('$campo',campo)>0  ORDER BY campo");

$linhas = mysql_num_rows($query);

if($linhas == 0){

echo "nada foi encontrado sobre a palavra $campo";

exit();

}

else{

while($row = mysql_fetch_array($query)){

$campo    = $row["campo"];

if($linhas %2 == 0){

$cor = "#E2EFFE";

}

else{

$cor = "#009966";

}

echo "

<tr bgcolor=\"$cor\">

  <td>&nbsp;<font size='1' face='Arial, Helvetica, sans-serif'>$campo</font></td>

</tr>";

}

}

?>

Minha tabela chama: wjt_mod_data

A conexao com o banco de dados está funcionando

E na pesquisa eu uso palavras que eu tenho certeza que há na tabela, porque já fiz pesquisa no painel de controle do DB.

O endereco ta aqui: http://wjt.schoenstatt.de/en/busca.php

Alguma luz....alguém?

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,7k
×
×
  • Criar Novo...