[ Príspevkov: 5 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 13.03.09
Prihlásený: 11.07.11
Príspevky: 11
Témy: 3 | 3
NapísalOffline : 04.07.2011 9:37 | Vyhľadávanie s medzerami

Zdravim,
Prešiel som si všetky témy ohľadom vyhľadávania, ale mám asi trošku špecifickejší problém.
Potrebujem vyhľadávanie kombinácií slov s medzerami.
Čiže napr. ak zadám "zasuvka " (s medzerou), má vypísať iba riadky so "zasuvka" (najideálnejšie riadky, ktoré začínajú na "zasuvka").

Momentálne mám vyhľadávanie riešené cez LIKE:
Kód:
$criteria = array();
if (isset($search_text) && gen_not_null($search_text)) {
  $search_fields = array('sku', 'description_short');
  $criteria[] = '(' . implode(' like \'%' . $search_text . '%\' or ', $search_fields) . ' like \'%' . $search_text . '%\')';
}
// build search filter string
$search = (sizeof($criteria) > 0) ? (' where ' . implode(' and ', $criteria)) : '';

$field_list = array('id', 'sku', 'quantity_on_hand', 'description_short', 'full_price');

$query_raw = "select " . implode(', ', $field_list)  . " from " . TABLE_INVENTORY . $search . "";

$query_split  = new splitPageResults($_GET['list'], MAX_DISPLAY_SEARCH_RESULTS, $query_raw, $query_numrows);
$query_result = $db->Execute($query_raw);


Podobne som to skúšal riešiť aj cez RLIKE pomocou pekného tutoriálu http://www.iamcal.com/publish/articles/php/search/
Regulárne výrazy však nie sú mojou silnou stránkou :)

Ak to má niekto vyriešené (resp. ak by ma niekto nakopol k riešeniu), budem vďačný.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 25.12.10
Prihlásený: 17.02.17
Príspevky: 87
Témy: 18 | 18
Bydlisko: Pezinok
NapísalOffline : 07.07.2011 21:30 | Vyhľadávanie s medzerami

Pozri na fulltext indexy (predpokladám že používaš MySQL):
http://dev.mysql.com/doc/refman/5.0/en/ ... earch.html
http://www.databasejournal.com/sqletc/a ... Part-1.htm


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 13.03.09
Prihlásený: 11.07.11
Príspevky: 11
Témy: 3 | 3
Napísal autor témyOffline : 08.07.2011 9:57 | Vyhľadávanie s medzerami

Zistil som, že ak zadám "zasuvka+", tak mi vyhľadá to čo chcem (čiže '+' nahrádza medzeru ' '). Čiže by som potreboval nahradiť ' ' s '+'.
Kód:
preg_replace("'\s+'", "'+'", $search_text);

mi ale šťastie neprináša.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 25.12.10
Prihlásený: 17.02.17
Príspevky: 87
Témy: 18 | 18
Bydlisko: Pezinok
NapísalOffline : 08.07.2011 19:41 | Vyhľadávanie s medzerami

Keď iba potrebuješ nahradiť medzeru za iný znak tak ti stačí str_replace() http://php.net/manual/en/function.str-replace.php


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 13.03.09
Prihlásený: 11.07.11
Príspevky: 11
Témy: 3 | 3
Napísal autor témyOffline : 11.07.2011 10:26 | Vyhľadávanie s medzerami

áno, str_replace je jednoduchšie a s ním mi to aj funguje :)


 [ Príspevkov: 5 ] 


Vyhľadávanie s medzerami



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Problém s medzerami

v PHP, ASP

9

402

05.05.2007 20:11

itsgoingd

V tomto fóre nie sú ďalšie neprečítané témy.

Atribut ID s medzerami

v HTML, XHTML, XML, CSS

9

312

05.01.2010 20:59

Ďuri

V tomto fóre nie sú ďalšie neprečítané témy.

rozsekanie mp3 s medzerami

v Zvuk

9

432

21.10.2007 17:47

mistr85

V tomto fóre nie sú ďalšie neprečítané témy.

Ako skopirovat text s medzerami s PDF do ODT

v Ostatné programy

1

130

01.11.2017 15:00

cinematik

V tomto fóre nie sú ďalšie neprečítané témy.

vyhladavanie

v Databázy

1

589

29.08.2009 11:30

bmatias

V tomto fóre nie sú ďalšie neprečítané témy.

vyhľadávanie

v HTML, XHTML, XML, CSS

15

2012

04.12.2007 13:15

wotan

V tomto fóre nie sú ďalšie neprečítané témy.

vyhladavanie

v Ostatné programy

4

485

30.06.2008 2:38

dedko45

V tomto fóre nie sú ďalšie neprečítané témy.

Vyhladavanie

v PHP, ASP

3

372

15.04.2008 20:36

stenley

V tomto fóre nie sú ďalšie neprečítané témy.

Vyhladavanie

v Databázy

3

111

08.04.2014 9:45

JanoF

V tomto fóre nie sú ďalšie neprečítané témy.

Vyhladavanie

v Delphi, Visual Basic

1

523

20.07.2009 19:25

Fico

V tomto fóre nie sú ďalšie neprečítané témy.

Vyhladavanie

v Databázy

7

626

31.05.2009 18:46

Snacker

V tomto fóre nie sú ďalšie neprečítané témy.

vyhladavanie

v PHP, ASP

5

176

25.04.2013 23:42

misko16

V tomto fóre nie sú ďalšie neprečítané témy.

vyhladavanie

v Správy pre vedenie fóra

9

676

19.04.2012 20:53

Jeffo

V tomto fóre nie sú ďalšie neprečítané témy.

Vyhladavanie

v PHP, ASP

1

323

24.09.2010 20:22

VireL

V tomto fóre nie sú ďalšie neprečítané témy.

mysql-vyhladavanie

v Databázy

5

452

11.11.2011 15:55

GoodWill

V tomto fóre nie sú ďalšie neprečítané témy.

Php? - Vyhladavanie

v PHP, ASP

2

124

12.06.2013 21:18

PepperSK



© 2005 - 2017 PCforum, edited by JanoF