Autor Zpráva
slovakCZ
Profil
Ahoj,

v prvni rade se omlouvam za nepouziti diakritiky, jsem na PC, kde cestina nejde nastavit a neni zde ani CZ klavesnice.

mam takovy dotaz, asi to bude jen nejaka drobnost, ale moc mi to neni jasne.. mam tabulku, kde mam mimo jine sloupce title, perex, body a nad temito tremi mam vytvoreny fulltext.
FULLTEXT KEY `fulltext` (`title`,`perex`,`body`)


mam pote takovyto kod:
$search = mysql_real_escape_string($_GET["search"]);
	$result = mysql_query("select * from $t_articles where match (title, perex, body) against ('$search')");
	while( $o = mysql_fetch_object( $result ) ){
		echo $o->title;
		echo "<br>";
	}


jeden zaznam (radek) v tabulce ma takovyto titulek: unikatni titulek
dalsi zaznam v tabulce ma titulek zas tento: Speciální halloweenský vzhled je tady!

kdyz dam vyhledat slovo titulek, tak mi skript vypise unikatni titulek. Kdyz dam ovsem vyhledat slovo vzhled, tak mi skript nevypise zhola nic. Neni mi moc jasne, slovo vzhled nema diakrituku, je dostatecne dlouhe (najde mi to i kratsi slova) a je taktez ve sloupce title... Nevite cim by to mohlo byt?

Dekuji za tipy
slovakCZ
Profil
aha, ted jsem vypozoroval jeste jeden jev.. kdyz dam slovo titulek i do jineho radku tabulky (taktez do sloupce title) tak mi to jiz nic nenajde.. vypada to tak, ze kdyz se dane slovo vyskytuje v jednom ze tri sloupcu (title, perex, body) vicekrat, tak mi to nevypise zadne vysledky.. kdyz se hledane slovo vyskytuje v nejakem sloupci jen jednou, tak mi ho to najde. Zajimave chovani, cim by to mohlo prosim byt?
slovakCZ
Profil
aha, tak jsem na to uz prisel, mel jsem drobnou chybu v dotazu, snad to apson nekomu pomuze kdo ma stejny problem :)
$result = mysql_query("select * from $t_articles where match (title, perex, body) against ('$search' IN BOOLEAN MODE)");
fuckin
Profil
Kde je ta chyba? Jsem asi slepý. Chybějící boolean mode u mě není chyba.
ninja
Profil
Hledané slovo bylo obsaženo v 50 a více procentech řádků, takové jsou v základním stavu ignorována (stejně jako slova kratší 4 znaků a některé stop slova).

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0