Jump to content
php.lv forumi
Bunkertor 7

Ko lietot LIKE% vietā, lai neatgrieztu nepareizus vārdus

Recommended Posts

Sveiki.

 

Es te nodarbojos ar tādu ļoti vienkāršu meklēšanas skriptu, kas meklē priekšmetus datubāzē pēc tegiem.

 

Šobrīd lietoju šādu:

$raw_results = mysql_query("SELECT * FROM items WHERE (`tags` LIKE '$query%');

Vienkāršākiem meklējumiem ir ok, bet ar dažiem vārdiem ir problēmas.

Piemēram, ja meklē "car" tad atgriež arī "cards" (loģiski - tas jau galu galā ir tas ko es viņam tanī querijā prasu)

"map" atgriež arī "maple"

 

Protams, es varētu aizvākt to procenta zīmi, bet man vajag lai viņš saprastu daudzskaitli.

 

Piemēram, ja kāds meklē daudzskaitli "maps" man vajag, lai atgriež gan "maps" gan "map"

un ja meklē vienskaitli "map" - vajag, lai arī atgrieztu "maps"

 

Kāda būtu labākā metode, lai to dabūtu gatavu?

Paldies.

Share this post


Link to post
Share on other sites

Uzturi DB ar visiem vārdu sinonīmiem, alternatīvām, locījumiem, daudzskaitļiem utt ( vai arī slēdzies klāt kādai online DB ar jau sagatavotu datu kopu ).

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...