Jump to content
Daniel Alves

SubStrings - Para usar em pesquisa

Recommended Posts

Daniel Alves

Caros amigos deparei-me com um bug no meu motor de pesquisas que desenvolvi em php

Imaginemos que tenho estes dois registos:

1  | Daniel

2  | Daniel Alves

Por exemplo se fizer uma pesquisa por NOME procurando DANIEL ele mostra-me somente o primeiro porque na bd ele está a selecionar integralmente o que lá está.

$query = 'select * from operarios where nome = "'.$texto.'" OR apelido = "'.$texto.'"';

Alguma sugestão de como resolvo isto?!

Eu pensei duma forma mas nao sei se dará. Tipo uso o STRLEN aplicado ao campo da procura.

E quando vou a fazer o select uso o SUBSTR com aquele numero de caracteres que consegui com o STRLEN

Assim mesmo que faça a pesquisa por "D" ele retorna-me tudo...

Acham que assim dará?! Ou algo algum modo mais simples de resolver este bug?  🤔

Share this post


Link to post
Share on other sites
laboss

Nao mostras a query, mas se for algo assim:

SELECT ID, Titulo, Texto FROM Noticias WHERE Titulo LIKE '%Daniel%'

não faz aquilo que queres, se o objectivo e procurar pelo texto da noticia, recomendo-te a usar full text index :)

Share this post


Link to post
Share on other sites
Daniel Alves

Ja pesquisei sobre isso do full text index  :)

Ta brutal. Mas agora o problema é outro LOL

estava a testar a query no phpmyadmin:

select * from operarios where match (nome,apelido) AGAINST ('Daniel')

E deu este erro: #1214 - The used table type doesn't support FULLTEXT indexes

Alguem sabe como resolver?!  ;)

Share this post


Link to post
Share on other sites
Daniel Alves

Acho que consegui activar através do código:

ALTER TABLE my_table ENGINE = MYISAM;

mas agora dá este erro:

#1191 - Can't find FULLTEXT index matching the column list

Share this post


Link to post
Share on other sites
Daniel Alves

Já consegui. Obrigado pela ajuda.

Esta cena ta muito fixe. E facilitou bastante as pesquisas assim  :)

Valeu  ;)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.