php sql full text

hi all,,,


This is mySQl query work works no promlem in the DB but not in php ...why


SQL

           SELECT directory. * ,
MATCH (
keywords, title
)
AGAINST (
'%%%pottery%%'
) AS score
FROM directory
WHERE MATCH (
keywords, title
)
AGAINST (
'%%%pottery%%'
)
ORDER BY score DESC


PHP


<?php
 MySQL_connect("xxxxxxxxxxxxxx", "xxxxxxxxxxxx", "xxxxxxxxxxxxx");
    MySQL_select_db("xxxxxxxxxxxxxxxxxx");
        $sql = " 
           SELECT directory. * ,
MATCH (
keywords, title
)
AGAINST (
'%%%pottery%%'
) AS score
FROM directory
WHERE MATCH (
keywords, title
)
AGAINST (
'%%%pottery%%'
)
ORDER BY score DESC
        ";
        $res = MySQL_query($sql);
?>


THanks

G
LVL 1
gabssAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Pete LongTechnical ConsultantCommented:
Hi ninobennett,
do you have the plugin for exchange?? what do the veritas job logs tell you?? do you have the open file option installed

Cheers!
0
DoppyNLCommented:
run youre query like this and you can see the error wich is occuring:
$res = mysql_query($sql , $connection) or die("<b>Query Failed</b><br>\n".$sql."<br>\n".mysql_errno().": ".mysql_error());
0
gabssAuthor Commented:
it returns only " Query Error "

nowt else....

any other help ?????????

and Petelong what u on about ?


G
0
Microsoft Azure 2017

Azure has a changed a lot since it was originally introduce by adding new services and features. Do you know everything you need to about Azure? This course will teach you about the Azure App Service, monitoring and application insights, DevOps, and Team Services.

DoppyNLCommented:
strange that it returns " Query Error ", as that is not in the code....

try this one:
$res = mysql_query($sql) or die("<b>Query Failed</b><br>\n".$sql."<br>\n".mysql_errno().": ".mysql_error());

if still no result try
print($sql);
to check if the sql is correct in PHP (some string parsing might make the sql incorrect).

you can also try to put your sql on a single line:
$sql = "SELECT directory. * , MATCH (keywords, title) AGAINST ('%%%pottery%%') AS score FROM directory WHERE MATCH (keywords, title ) AGAINST ('%%%pottery%%') ORDER BY score DESC";
0
SqueebeeCommented:
You can also drop the % symbols unless you are really searching for a literal % symbol, in which case you should escape it with \%
0
gabssAuthor Commented:
DoppyNL

Thanks this works BUT:

$sql = "SELECT directory. * , MATCH (keywords, title) AGAINST ('%%%pottery%%') AS score FROM directory WHERE MATCH (keywords, title ) AGAINST ('%%%pottery%%') ORDER BY score DESC";


i have new BIG BIG problem with it....

If one row in db contains the word "pottery" it return it no problem.....

BUT

If 2 rows in db contain the wor "pottery" it return nothing

Any ideas


Thanks

G
0
SqueebeeCommented:
Did you try dropping all those % symbols?
0
gabssAuthor Commented:
yep tried that ???

Same problem ???

im lost...

please help ???

G
0
SqueebeeCommented:
How many rows are in the table? I term that appears in too many rows is considered a stop-word and is not searched against, since too large a percentage of rows will be returned.
0
gabssAuthor Commented:
only 4 ....

i'll add a load now and see

cheers
0
gabssAuthor Commented:
yeh it sort of works....

BUT

im doing a niche directory so 10 sites might have the same keywords..... out of 20 ....

Is there a work around ?


Thanks again

G

0
gabssAuthor Commented:
it only work with 4 lettered words ?

can it do 3 ??

thanks again

G
0
SqueebeeCommented:
Three letter words are too short, it is possible to change the setting and recompile if needs be, you can also use the IN BOOLEAN MODE searching to get around the half row limits and 3 word constraints.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Pete LongTechnical ConsultantCommented:
Hello this question has been open a while please take the time to come back and clean it up.

Closing Questions
http://www.experts-exchange.com/help.jsp#hs5


Best Wishes

Pete
www.petenetlive.com
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
PHP

From novice to tech pro — start learning today.