Autor Zpráva
potom
Profil
Ahoj nefunguje mi fulltextové vyhledávání, a netuším proč :-(
Nevidíte někde chybu, nebo nevíte co dělám špatně?






pokud změnim dotaz na klasickej tak všechno fachá OK :-(
Kajman_
Profil *
Posíláte do databáze řetězec '$dotaz' a ne jeho obsah. Podobný problém bude i s přebývajícími apostrofy kolem $result.
Kajman_
Profil *
A u set names májí být asi normální apostrofy ' a ne zpětné apostrofy `.
potom
Profil
JJ to jsem se jen upsal,


<?php

$db="firmy";
$spojeni=mysql_connect(".................
if (!$spojeni) echo("nepřípojeno");
mysql_select_db($db, $spojeni);
mysql_query("SET CHARACTER SET utf8");
mysql_query("SET NAMES `utf8`");
mysql_query("SET COLLATION_CONNECTION = `utf8_czech_ci`");
$dotaz= "SELECT * FROM firmy WHERE MATCH (nazev,adresa,obec,osoba,popis,zaznam) AGAINST ('Radovan') LIMIT 0,20";

if ($result = mysql_query($dotaz)) {
while ($polozka = mysql_fetch_array ($result)) {
$firid = $polozka['id'];

echo $firid."<br>";
}}

?>



ale stále FULLTEXT nejde :-(, jak řikám když dám jinej dotaz, třeba SELECT * FROM firmy WHERE ........ tak to fachá,
nemůže to být někde zakázané v databázi, nebo někde? Nebo chyba ještě jinde?
Kajman_
Profil *
Vypište si mysql_error. Odstraňte ty zpětné apostrofy.
potom
Profil
<?php

$db="firmy";
$spojeni=mysql_connect("............................
if (!$spojeni) echo("nepřípojeno");
mysql_select_db($db, $spojeni);
mysql_query("SET CHARACTER SET utf8");
mysql_query("SET NAMES 'utf8'");
mysql_query("SET COLLATION_CONNECTION = 'utf8_czech_ci'");
$dotaz= "SELECT * FROM firmy WHERE MATCH (nazev,adresa,obec,osoba,popis,zaznam) AGAINST ('Radovan') LIMIT 0,20";

if ($result = mysql_query($dotaz)) {
while ($polozka = mysql_fetch_array ($result)) {
$firid = $polozka['id'];

echo $firid."<br>";
}}

?>




mysql_error($spojeni); bez chyby :-(
Kajman_
Profil *
if ($result = mysql_query($dotaz)) {
while ($polozka = mysql_fetch_array ($result)) {
$firid = $polozka['id'];

echo $firid."<br>";
}}
else echo "chyba v sql:".mysql_error();

Pokud to nevypíše tenhle řetězec, tak tam asi není žádný Radovan.
potom
Profil
chyba v sql: nebyla vybrána žádná databáze

:-D asi sem trotl ale nevim kde je chyba
potom
Profil
Kajman_
Profil *
Máte databázi firmy a v ní tabulku firmy?

$db="firmy";
potom
Profil
Tak tak, oboje firmy.

zkoušel sem to na jinym MYSQL serveru a tam to funguje, takže chyba bude asi někde v nastavení mysql, ale divný teda že to nehází žádnej error
nightfish
Profil
potom
mimochodem je tabulka "firmy" typu myisam a jsou na uvedených sloupcích vytvořené fulltext indexy?
Kajman_
Profil *
Zkuste
from firmy.firmy

ale spíš se to prostě nedostane do té databáze...
mysql_select_db($db, $spojeni) or die('nepodarilo se zvolit db:'.mysql_error());

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