« Léo » 0 Denunciar post Postado Novembro 29, 2006 Fala galera! beleza? Espero que sim! :D Seguinte, to fzendo um sistema de busca de clientes cadastrados (minha primeira aventura com Banco de Dados! rs). Soh q ta rolando uma zebra! Qd coloco a primeira letra de um nome já cadastrado num acha nd! Ex.: Tenho cadastrado o cliente "Leonardo Cabral" (sendo nome e sobrenome variaveis diferentes); Se eu buscar por "e","eo","eon","eona","eonar","eonard","eonardo" ou ainda "a","ab","abr","abra","abral", por exemplo, ele acha! Porém se eu colocar L na frente de qqr exemplo do primeiro grupo ou C na frente de qqr exemplo do segundo grupo ele não echa resultado algum. Meu código é esse ae: (o que tiver errado ou puder ser melhor, pf avisem. Como disse é minha primeira aventura com BD e tmb num sou mt experiente com PHP) $plchave = strtolower($_POST["plchave"]); include "../includes/conexao.php"; if(conexao) { $consulta = "SELECT * FROM sunset_clientes"; $buscBd = mysql_query($consulta,$conec); $linhas = mysql_num_rows($buscBd); if(($buscBd) and ($linhas)) { $nEncontrado = 1; for ($i=0;$i<=$linhas;$i++) { $BD_nome = $dados["BD_nome"]; $BD_sobrenome = $dados["BD_sobrenome"]; $vlNome = strpos($BD_nome,$plchave); $vlSobrenome = strpos($BD_sobrenome,$plchave); if(($vlNome) or ($vlSobrenome)) { $nEncontrado = 0; $clEncontrado = $dados["BD_nome"]." ".$dados["BD_sobrenome"]; $UPclEncontrado = ucwords($clEncontrado); echo "<strong>Nome: </strong>".$UPclEncontrado."<br />"; }else if(($i == $linhas) and ($nEncontrado)) { echo "Nenhum cliente com este nome foi encontrado."; } $dados = mysql_fetch_array($buscBd); } }else { echo "Nenhum cliente com este nome foi encontrado."; } }else { echo "Erro ao acessar o Banco de Dados!"; } Flw galera!!! Agradeço desde já! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Abraços! http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Compartilhar este post Link para o post Compartilhar em outros sites
MetalDragonX 0 Denunciar post Postado Novembro 29, 2006 usa um like na busca e manda ordenar por nome que fica mais facil.da um like no campo "nome" e no campo "sobrenome" Compartilhar este post Link para o post Compartilhar em outros sites
Marcio Leandro 0 Denunciar post Postado Novembro 29, 2006 Movido: PHP=>Mysqla query fica assim: "SELECT * FROM sunset_clientes where nome LIKE '%$plchave%' OR sobrenome LIKE '%$plchave%';"O % é um coringa, e representa qualquer conjunto de caracteres. Compartilhar este post Link para o post Compartilhar em outros sites
« Léo » 0 Denunciar post Postado Novembro 30, 2006 Opaa!! vlw msm galera!!Soh pra fixar: Entao o % diz pra comparar a $plchave com qqr parte do nome ou sobrenome cadastrado! correto?E o LIKE? Qual a função exata dele??Vlw! Abraços!!! Compartilhar este post Link para o post Compartilhar em outros sites
Marcio Leandro 0 Denunciar post Postado Novembro 30, 2006 O like serve para você comparar strings Compartilhar este post Link para o post Compartilhar em outros sites