Autor | Zpráva | ||
---|---|---|---|
Akali Profil |
#1 · Zasláno: 14. 11. 2010, 21:37:30
Ahoj, někde se vloudila chyba při vyhledávání na webu.. Zde je zdrojový kód
<?php include 'db.php'; $search = mysql_real_escape_string($_GET["search"]); $result = mysql_query(" SELECT * FROM texty WHERE MATCH(nadpis, text) AGAINST ('$search' IN BOOLEAN MODE) ORDER BY 5 * MATCH(nadpis) AGAINST ('$search') + MATCH(text) AGAINST ('$search') DESC "); while ($radek = mysql_fetch_array($result)) { echo $radek['nadpis']; echo $radek['text']; } ?> Vůbec už si nevím rady. Zde je živej odkaz http://plastoma.velkyberanov-fotbal.cz/vyhledavac.php?search= |
||
Darker Profil |
#2 · Zasláno: 14. 11. 2010, 21:43:55
No a zjistil sis, co za proměnnou je $result? Skus jí vypsat přes echo, resource to asi není, ale mělo by.
|
||
Akali Profil |
#3 · Zasláno: 14. 11. 2010, 21:48:49
když vypíšu result
echo $result; Tak to nic nevypíše :( |
||
panther Profil |
#4 · Zasláno: 14. 11. 2010, 21:50:37
Akali:
na ř. 12 by ti to mělo vypsat Warning, že u mysql_fetch_assoc nemáš resource. Vypiš si mysql_error() a zapni výpis chybových hlášek.
|
||
Akali Profil |
#5 · Zasláno: 14. 11. 2010, 21:54:17
Tak chyba je tady, ale stále nevím, jak ji opravit :(
http://plastoma.velkyberanov-fotbal.cz/vyhledavac.php?search=okno |
||
AM_ Profil |
#6 · Zasláno: 14. 11. 2010, 22:03:47
na řádce 21 máš syntaktickou chybu, syntaxi jazyka by si zvládat měl ;) případně si pořiď editor se zvýrazněním syntaxe (třeba pspad), tam je z obarvení vidět, kde je něco špatně.
|
||
Akali Profil |
#7 · Zasláno: 14. 11. 2010, 22:09:13
Na ten řádek se koukám marně už několik hodin
|
||
AM_ Profil |
#8 · Zasláno: 14. 11. 2010, 22:12:50
tak se na něj dívej dál, jestli se o něj nechceš podělit ;) ale raději o celý kód, chyba může být někde dříve, ale až na řádku 21 to interpreteru přestane dávat smysl.
|
||
Akali Profil |
#9 · Zasláno: 14. 11. 2010, 22:17:49
Tak celý kód
vyhledavac.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="cs"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Language" content="cs" /> <link rel='stylesheet' type='text/css' href='styl.css' /> <title>titulek</title> </head> <body> <?php include 'db.php'; $search = mysql_real_escape_string($_GET["search"]); $result = mysql_query(" SELECT * FROM texty WHERE MATCH(nadpis, text) AGAINST ('$search' IN BOOLEAN MODE) ORDER BY 5 * MATCH(nadpis) AGAINST ('$search') + MATCH(text) AGAINST ('$search') DESC "); while ($radek = mysql_fetch_array ($result)) { echo $radek['nadpis']; echo $radek['text']; } print("Došlo k chybě v dotazu: ".$q."<br>".mysql_error()); ?> </body> </html> formular.html <form method="GET" action="vyhledavac.php"> <input type="text" name="search"> </form>. db.php <?php $link = mysql_connect('mysql5-4', 'uzivatel', 'pass'); mysql_select_db('db_name', $link); ?> |
||
AM_ Profil |
#10 · Zasláno: 14. 11. 2010, 22:33:43
Tak na tohle nemám sil, před chvílí ti ten kód házel unexpected T_VARIABLE, teď hází úplně jinou chybu. Takže mezitím ten kód měníš, tak jak ti máme pomoct?
navíc ti to vypisuje jakou tam máš chybu, odborník přes databáze nejsem takže nevím jak se přesně indexuje FULLTEXTem, ale problém je zřejmě v zaindexování databáze, ne v PHP kódu. |
||
Kajman_ Profil * |
#11 · Zasláno: 15. 11. 2010, 08:47:06
ale problém je zřejmě v zaindexování databáze
Což už tu bylo před pár dny tipováno. |
||
Akali Profil |
#12 · Zasláno: 15. 11. 2010, 15:25:27
Jak bych měl to zaindexování databáze vyřešit?
|
||
Kajman_ Profil * |
#13 · Zasláno: 15. 11. 2010, 15:41:33
Vytvořením fulltextové indexu na sloupci nadpis i na sloupci text. Buď pomocí aplikace adminer nebo podobné. Nebo přímo příkazem
create index |
||
Akali Profil |
#14 · Zasláno: 15. 11. 2010, 16:53:36
Tak to vážně bylo jenom nastavením pma.. Díky
|
||
AM_ Profil |
#15 · Zasláno: 15. 11. 2010, 19:49:42
No, jestli zaindexování databáze nazýváš nastavení phpmyadmina, asi by ses měl zamyslet nad tím, kde jsi ve svém studiu co zanedbal.
|
||
Akali Profil |
#16 · Zasláno: 15. 11. 2010, 21:19:14
Jistě, že tam mělo být nastavení tabulky, respektive řádku. Omlouvám se!
|
||
AM_ Profil |
#17 · Zasláno: 15. 11. 2010, 21:31:30
respektive sloupce... promiňte mi mou hnidopišnost
|
||
Sanjay Profil |
#18 · Zasláno: 15. 11. 2010, 22:34:29
Ten vyhledavač hledá přez MySQL ?
|
||
Akali Profil |
#19 · Zasláno: 17. 11. 2010, 21:17:11
jo, tak sloupce. Ano, přes MySQL.
|
||
Časová prodleva: 13 let
|
0