Chris, or anyone,

I have tried to escape the slashes. Debugging ...

$sql = 'SELECT ... ...
AGAINST (\'"ready maria"\' IN BOOLEAN MODE) ...';

This works. But if I addslashes or stripslashes, or do nothing, it does not
work.

See these 3 variations. Neither work. What should I do? A part from hang
myself :)

$sql = 'SELECT id,AU,ST,BT,AT FROM '.$table.' WHERE MATCH
(TNum,YR,AU,ST,SD,BT,BC,AT,PL,PR,PG,LG,AUS,KW,GEO,AN,RB,CO) AGAINST
(\''.addslashes($search).'\' IN BOOLEAN MODE) ORDER BY id asc';

$sql = 'SELECT id,AU,ST,BT,AT FROM '.$table.' WHERE MATCH
(TNum,YR,AU,ST,SD,BT,BC,AT,PL,PR,PG,LG,AUS,KW,GEO,AN,RB,CO) AGAINST
(\''.stripslashes($search).'\' IN BOOLEAN MODE) ORDER BY id asc';

$sql = 'SELECT id,AU,ST,BT,AT FROM '.$table.' WHERE MATCH
(TNum,YR,AU,ST,SD,BT,BC,AT,PL,PR,PG,LG,AUS,KW,GEO,AN,RB,CO) AGAINST
(\''.$search.'\' IN BOOLEAN MODE) ORDER BY id asc';

John




> > SELECT id,AU,ST,BT,AT FROM jdaxell.ccl WHERE MATCH
> (TNum,YR,AU,ST,SD,BT,BC,AT,PL,PR,PG,LG,AUS,KW,GEO,AN,RB,CO) AGAINST
> > ('"ready maria"' IN BOOLEAN MODE) ORDER
> > BY id asc
> >
> > When I run the same (copied and pasted) SQL in PHP, it is as though
> > MySQL is doing a boolean search for `+ready +maria` without the double
> > quotes and finding results in every database. if you search for "ready
> > maria" it should only find one entry.
>
> Escape the double quotes.    ('\"ready maria\"' IN BOOLEAN ....
>
>         g.luck,
>         ~Chris


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to