aletres 0 Denunciar post Postado Outubro 3, 2007 Como consultar o banco de dados fazendo um WHERE nome='$nome' mas procurando todos os nomes parecidos.Campo: JoãoRetorna: Joao, Joana, Jao, etc...Sei que tem uma função que poê uma porcentagem de diferença da string. Alguém sabe?Obrigado.Alexandre. Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Outubro 3, 2007 Tu fala é fazer uma busca ? se for, podes usar o LIKE, exemplo: se sua tabela tem: Naiara Joaquim Nara - Essa palavra será encontrada. basta fazer assim: PHP <?php $conexao = mysql_connect("localhost", "usuario", "senha"); $db = mysql_select_db("NOME_DB"); $selecionar = "SELECT * FROM suatabela WHERE campodasuatabela LIKE '___n%'"; Compartilhar este post Link para o post Compartilhar em outros sites
aletres 0 Denunciar post Postado Outubro 5, 2007 O LIKE eu conheço. mas não é isso.Você informa um porcentagem, exemplo: 75%. Ele busca os campos que são 75% parecido com a informação digitada.Obrigado novamente.Alexandre. Compartilhar este post Link para o post Compartilhar em outros sites
Wagner Bianchi 0 Denunciar post Postado Outubro 7, 2007 Opa, É com o LIKE mesmo que você fará isso. . .você já usou todos os recursos do operador? Estude isso: http://dev.mysql.com/doc/refman/5.0/en/str...-functions.html Abração! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
aletres 0 Denunciar post Postado Outubro 16, 2007 Valeu cara, mas não achei o que procuro. Como por exemplo, no Google, a pessoa digita eroneamente: palavrha, o Google diz: Você quiz procurar por palavra? Como ele procura as strings parecidas? Compartilhar este post Link para o post Compartilhar em outros sites
Wagner Bianchi 0 Denunciar post Postado Outubro 16, 2007 SOUNDEX QUERY...é a danada da consulta donética, complicada pra fazer. Além do que, o google usa pesquisa nomística e gusrada tudo que é pesquisado...com um tempo ele terá todos as palavras, de todos os idiomas e poderá corrigir erros de digitação facilmente. No seu caso, apresente o seu usuário uma busca que você faz com o sql que te passamos, através da substring da string fornecida. O que acha? palavra: SELECT * FROM table WHERE campo LIKE SUBSTRING('$var',1,3); Bom, acho que seria uma solução. Abração!! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
Ednei Martinez 0 Denunciar post Postado Outubro 16, 2007 Como consultar o banco de dados fazendo um WHERE nome='$nome' mas procurando todos os nomes parecidos.Campo: JoãoRetorna: Joao, Joana, Jao, etc...Sei que tem uma função que poê uma porcentagem de diferença da string. Alguém sabe?Obrigado.Alexandre.$query = "select * from tabeladesejada where nome like'".$nome."%' "; Compartilhar este post Link para o post Compartilhar em outros sites
Wagner Bianchi 0 Denunciar post Postado Outubro 16, 2007 Essa consulta retornará tudo que é composto de João_____, ou seja: [*]João Roberto [*]João Pedro; [*]João Silas; [*]João da Silva; [*]João João... tipo, vamos partir para implementação? Veja de quantas letras sua string é composta ou mesmo, com um array de possíveis vogais acentuadas, veja a posição da vogal acentuada dentro da string com a função strpos(), Após isso, use substr(), como já abordei ou mesmo, str_replace() na posição da string que contém o acento e busque os parecidos com LIKE, mas deve-se usar o substr(), senão, retornará como a consulta acima. Abração!! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
aletres 0 Denunciar post Postado Novembro 30, 2007 Valeu! :) Compartilhar este post Link para o post Compartilhar em outros sites