[ laleb @ 03.02.2014. 09:58 ] @
Pozdrav, potrebna mi je pomoc, pravim pretragu unutar sajta i hteo bih da optimizujem pretragu.

Ukoliko korisnik unese nesto tipa 'čćž' pretraga treba da da rezultate 'čćž' i 'ccz' takodje 'ccz' treba da daje 'čćž' i 'ccz'.

Za pretvaranje inputa koristio sam funkciju:
Code:
function lat_search($string){
            
        $trans = array(
        "č" => "c",
        "ć" => "c",
        "ž" => "z",
        "š" => "s",
        "đ" => "d",
        "Č" => "C",
        "Ć" => "C",
        "Ž" => "Z",
        "Š" => "S",
        "Đ" => "D",
        
        
        );
        return strtr($string, $trans);
}

$name = $_POST['nesto']

$result = mysqli_query($con,"SELECT * FROM Persons WHERE name = $name");




ovom funkcijom sam resio 'čćž' = 'ccz' e sada potrebno mi je obrnuto 'ccz' = 'čćž'.

Ima li neko iskustva sa ovim i da li mozda postoji neka funkcija u musql-u kora ce 'peglati' "SELECT * FROM Persons WHERE neka_funkcija(name) = ".lat_search($name).""?

[ ivanhooo @ 03.02.2014. 11:26 ] @
A šta ako neko bude tražio reč: korpica ?
Poenta je da nikada ne možeš znati da li je slovo c zapravo č ili ć bez nekog rečnika.
[ Nemanja Avramović @ 03.02.2014. 11:58 ] @
Tako je, za slova bez "kvačica" nikada ne možeš biti siguran koja su sa "kvačicama", ali sam siguran da ono što tebi treba moraš da rešiš preko MySQL-a a ne preko PHP-a. Baci pogled ovde, Bogdan Kecman je lepo objasnio.
[ laleb @ 03.02.2014. 12:16 ] @
Hvala vam u svakom slucaju resio sam sa strane MySQL-a.

Code:
replace(replace(replace(replace(replace(LOWER(name),'č','c'),'ć','c'),'ž','z'),'š','s'),'đ','dj')