[ urkozamanje @ 04.12.2007. 13:08 ] @
ovako, da sad ne objasnjavam zasto je kasno da menjam arhitekturu tabela i slicno, ustedece mi puno posla ako ovo uspem da izvedem (mada kapiram da nije nista tesko).

u tabeli imam kolonu kolona1 u kojoj imam recimo zapise tipa: "abcd ; efgh ; ijklm ; nopr ;" ili "abcd ; ijklm " ili "efgh ; nopr" ili samo recimo "nopr" ( delovi stringa su odvojeni tacka-zarezom kao sto sam napisao)

mogu li da izvedem pretragu po recimo jednom od tih stringova, ili skupu istih. npr. ako odredjeni zapis sadrzi bilo gde string po kojem se pretrazuje (ili njegov deo) da mi vrati taj red?

npr. u slucaju da imam zapis "nopr" a string po kojem pretrazujem je "abcd ; nopr" - da vrati taj red.

ili da imam zapis "abcd ; efgh" a string po kojem pretrazujem je "abcd ; ijklm ; nopr" - imam bar deo koji se poklapa, treba da vrati taj red.

znaci da se poklapa bar jedan od "delova" zapisa. da je uslov da se string pretrage i zapis u tabeli bar u jednom (bilo kojem delu) poklapaju.



p.s.

LIKE ne moze jer otpada u slucaju kada je npr. zapis "abcd" a string pretrage "abcd ; nopr " - kapiram da onda ide kroz zapis i kao uslov koristi ceo string "abcd ; nopr" a ne njegov deo, tj "abcd" ne sadrzi "abcd ; nopr " i ne vraca nista.


uh.. kapiram da je konfuzno sklopljeno pitanje, ali ako iko bar nasluti o cemu se radi, odgovaram na sva podpitanja.


unapred hvala.
[ Milan M. Radovic @ 05.12.2007. 02:03 ] @
Da li ce ovo resiti tvoje probleme ?

Code:

<?php
$search_str = "Marko;Goran;Pera;Kosta;Goran;Milorad;Vlada;Zeljko";
$str = "Zeljko;Marko;Goran;Pera";
$array = split(';', $search_str);

foreach($array as $el)
{


    if(substr_count($str,$el)== true)
    {
        echo "String : \"$el\" Nadjen u Stringu \$str<br>\n";
    }
    else
    {
        echo "String : \"$el\" <b>NIJE</b> nadjen u Stringu \$str<br>\n";
    }
    
}

 ?>
[ urkozamanje @ 05.12.2007. 09:41 ] @
hvala za scriptu. logika je ta. samo sto mene zanima da li je moguce da u sam MySQL upit ukljucim ovakav uslov, zajedno sa jos gomilom drugih uslova?

ovako bih prvo izvukao sve redove koji zadovoljavaju ostale search uslove, pa onda naknadno pravio jos jednu selekciju kroz php. da li mozda sam SQL ima logiku kojom bih ovo mogao da postignem ( u samom SQL upitu)?

hvala na pomoci.
[ Milan M. Radovic @ 05.12.2007. 12:15 ] @
Postoji varijanta da onaj serach string izdelis sa split,pa da na foreach generises deo Stringa za MySQL (mislim na WHERE promenjiva LIKE '%$el%' ... )

A drugo je ovako... ako nemas vecu bazu od nekih 10.000 redova,razlika nece biti skoro ni milisekunda...Tako da mozes tako kao sto si rekao.
[ urkozamanje @ 05.12.2007. 13:15 ] @
hm.. ok. najverovatnije cu ipak kroz php ponoviti proces. mislio sam samo da mozda postoji "cistije" resenje.

jos jednom, hvala na pomoci.