Oto moja funkcja dodająca % do każdego z wyrazów:
function zapytanieSzukaj($text) { }
A tak wygląda moje zapytanie:
$likes = zapytanieSzukaj("test testu"); "SELECT * FROM `NewsPhoto` WHERE `Tags` Like '$likes'"
Proszę o pomoc

function zapytanieSzukaj($text) { }
$likes = zapytanieSzukaj("test testu"); "SELECT * FROM `NewsPhoto` WHERE `Tags` Like '$likes'"
function warunki($fraza,$kolumny) { $slowo = $fraza; // aby rozbić wyszukiwanie na osobne słowa - zakomentować tą linię i odkomentować zakomentowane //$frazes = explode(' ',$fraza); //foreach ($frazes as $slowo) //{ $zbior[] = $slowo; if ($ile>5) { $_70 = $ile * 0.80; // im mniejsza będzie ta liczba tym więcej wygeneruje warunków krótszych fraz } else { $_70 = 4; } $x = $ile - $mniej; for($i=0;$i<$x;$i++) { $zbior[] = mb_substr($slowo, $i, $mniej,'utf-8'); } for($i=0;$i<$ile;$i++) { $zbior[] = mb_substr($slowo,0,$i+1).' '.mb_substr($slowo,$i+1); } //} foreach ($kolumny as $klucz => $kolumna) { foreach ($zbior as $key => $fr) { if (first($zbior,$key) and first($kolumny,$klucz)) { $warunki .= $kolumna.' LIKE \'%'.$fr.'%\' '; } else { $warunki .= ' OR '.$kolumna.' LIKE \'%'.$fr.'%\' '; } } } return $warunki; }
$wyniki_wyszukiwania_w_kategoriach = $db->query("SELECT * FROM kat WHERE ($warunki_do_kategorii) AND status=1 ")->res(); $wyniki_wyszukiwania_w_produktach = $db->query("SELECT * FROM produkt WHERE ($warunki_do_produktow) $od $do $kategoria AND status = 1 ")->res();
Warning: Invalid argument supplied for foreach() in .... on line 39
foreach ($kolumny as $klucz => $kolumna)
function first($array,$key) { return true; return false; } else { $array = 0; if($array == $key) return true; return false; } }