Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z AGAINST
drips
post 12.08.2010, 07:23:33
Post #1





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 28.09.2009

Ostrzeżenie: (0%)
-----


Hej, mam problem z wyszukiwarką jest kod:
Kod
<?

$con = mysql_connect('host',pass ,pass)or die (mysql_error()); $q = mysql_select_db(newsy, $con) or die ('blad db');

if(addslashes($_POST['formularz']) == "wyslano")
{
$szukane = addslashes(strip_tags(htmlspecialchars($_POST['wyszukiwarka'])));

$sel = mysql_query("SELECT * FROM news WHERE MATCH(tytul,tresc) AGAINST('+$szukane'IN BOOLEAN MODE)") or die (mysql_error());




echo "<table><tr><td>";
While($row = mysql_fetch_array($sel))
{
echo "<tr><td>".$row['data']."</td><td>".$row['tytul']."</td><td>".$row['tresc']."</td><td>".$row['inne']."</td></tr>";
}
echo "</table>";
}
?>


i wszystko jest super wyszukuje bardzo ładnie ale nie moge wyszukac po części frazy

np. wspisując słowo:
Cytat
adres
znajdzie wszystkie teksty i posortuje ale jak wpiszę
Cytat
adre

to już nie pokaże żadnego wyniku, czy może ktoś zerknąć na ten kod?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
wookieb
post 12.08.2010, 09:50:42
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




A czy czasem nie brakuj Ci spacji przed IN BOOLEAN MODE? Poza tym uzyskanie braku rezultatu jest całkiem możliwe

Ten post edytował wookieb 12.08.2010, 09:50:59


--------------------
Go to the top of the page
+Quote Post
drips
post 12.08.2010, 12:25:11
Post #3





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 28.09.2009

Ostrzeżenie: (0%)
-----


w sumie against szukać powinno po części frazy słowa więc nie powinno być jakichś problemów, tym bardziej że po całym słowie szuka np. "mojej" znajdzie ale "moje" juz nie znajdzie
dodałem spacje ale jest bez zmian
Go to the top of the page
+Quote Post
fander
post 1.09.2010, 15:10:33
Post #4





Grupa: Zarejestrowani
Postów: 231
Pomógł: 22
Dołączył: 6.10.2008

Ostrzeżenie: (0%)
-----


zobacz tak

$q = mysql_query("SELECT * FROM news WHERE MATCH(tytul,tresc) AGAINST('+$szukane'* IN BOOLEAN MODE)");

http://dev.mysql.com/doc/refman/5.1/en/fulltext-boolean.html

Ten post edytował fander 1.09.2010, 15:28:28
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 07:34