Jump to content


Photo

Busca Interna


  • Faça o login para participar
6 replies to this topic

#1 junaooaks

junaooaks

    Normal

  • Usuários
  • 103 posts
  • Sexo:Masculino
  • Localidade:Mantena

Posted 07/11/2007, 13:26

ai galera

to tendo um probleminha com a consulta no sistema de busca

to precisando fazer a consulta pela primeira letra

ex:

se no formulario de busca for digitado a letra "A" eu quero que busca no banco de dados todas as palavras que começa com a letra "A", e que o resultado das busca firem um link para busca todos os restantes

ex: fiz uma busca com a letra "A" apareceu
Alessandro
Alex

estas duas palavra elas tem que vim como link e na hora que clicar nelas elas me retorna todo o conteudo que pertence a esta pessoa

nome, endereço, telefone,....etc

o codigo gerado para fazer a busca e este : $sql = "SELECT * FROM `cliente` WHERE nome LIKE '". $nom ."%'";este codigo esta errado. ele nao me retorna todas as palavras que estao no banco de dado com a letra "A";

agora a parte e fazer o resultado da busca vira um link e mostra todos os conteudo da pessoa, eu nao faço nem ideia como fazer.

ja fiz busca no forum com este , nao tive sucesso

agradeço

#2 André Milaré

André Milaré

    Novato no fórum

  • Usuários
  • 22 posts
  • Sexo:Não informado

Posted 07/11/2007, 13:56

Olá

tente:

$sql = "SELECT * FROM `cliente` WHERE nome LIKE '". trim($nom) ."%'";

E verifique se sua variavel $nom está certa, pois o comando é esse mesmo!

E quando vc fizer a listagem, o ideal vc teria que montar outra página para quando clicar no nome aparecer os detalhes, tipo:

echo "<a href=\"detalhecliente.php?Codigo=" . $Registro["CodCliente"] . "\">" . $Registro["NomCliente"] . "</a>";

é por aí a coisa :assobio:

[]'s André Milaré

#3 Dudu

Dudu

    Viva la vida

  • Usuários
  • 1437 posts
  • Sexo:Masculino
  • Localidade:Uberlândia - MG
  • Interesses:PHP

Posted 07/11/2007, 14:34

Complementando o que o André disse, a variável $Registro veio do mysql_fetch_array()

while($Registro = mysql_fetch_array($sql)) {
echo "<a href=\"detalhecliente.php?Codigo=" . $Registro["CodCliente"] . "\">" . $Registro["nome"] . "</a><br>";
}


Até mais ^_^

Edição feita por: _Dudu_1533, 07/11/2007, 14:35.

Fórum WMO - Equipe de Desenvolvimento / Banco de Dados - Moderador


Twitter: HostCheap


#4 junaooaks

junaooaks

    Normal

  • Usuários
  • 103 posts
  • Sexo:Masculino
  • Localidade:Mantena

Posted 07/11/2007, 14:39

$sql = "SELECT * FROM `cliente` WHERE nome LIKE '". trim($nom) ."%'";

ai nao esta selecionando todos os registro do banco de dados

quando faz a consulta, ela me retorna o 1º arquivo registrado no banco de dados

ex: tenho 3 registro no db " udismar, udis, udism " quando faz a consulta ele so me retorna o 1º udismar

eu preciso de uma consulta que me retorne toda a palavra que comece com o valor digitada pelo o usuario. Se ele digitar "A,B,C..." eu preciso que ela me retorne todas as palavras


obrigado pela atenção

#5 Dudu

Dudu

    Viva la vida

  • Usuários
  • 1437 posts
  • Sexo:Masculino
  • Localidade:Uberlândia - MG
  • Interesses:PHP

Posted 07/11/2007, 15:36

$sql = "SELECT * FROM `cliente` WHERE nome LIKE '%". trim($nom) ."%'";


Cuidado com o SQL INJECTION.
Trate as informações antes de processá-las em uma query OK?

Funções que podem te ajudar:
addslashes()
htmlentities()

Até mais ^_^

Edição feita por: _Dudu_1533, 07/11/2007, 15:38.

Fórum WMO - Equipe de Desenvolvimento / Banco de Dados - Moderador


Twitter: HostCheap


#6 junaooaks

junaooaks

    Normal

  • Usuários
  • 103 posts
  • Sexo:Masculino
  • Localidade:Mantena

Posted 07/11/2007, 16:01

echo "<a href=\"detalhecliente.php?Codigo=" . $Registro["CodCliente"] . "\">" . $Registro["nome"] . "</a><br>";

ai galera obrigado pela a juda

TEM como colocar em ordem alfabetica ?

Edição feita por: junaooaks, 07/11/2007, 16:13.


#7 boirock

boirock

    Tecnologia para todos (agora hexa campeão)

  • Usuários
  • 1559 posts
  • Sexo:Masculino
  • Localidade:Curitiba - PR
  • Interesses:PostgreSQL - PHP

Posted 07/11/2007, 21:43

O que é do back-end, ao back-end =D
O correto é você dizer para o SQL trazer ordenado para você... para isso, use "ORDER BY nome_do_campo" no final da query... blz? (y)
[] Rafael :boxing:




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq