2012-03-22 8 views
0

誰でも助けることができます、私はmysqlのテキストフィールドを検索するPHPを使用して検索を構築しようとしています。ブールPHP MySQLとOR NOT検索

(「この句」OR:

私はそう例えば、文字列を検索することができることだけでなく、持っていなければならない基準、または基準としませ基準を入力できるようにするには、ユーザーをしたいと思います「そのフレーズ」)AND単語

現時点では私は、検索文字列を生成するには、以下の例を使用しています:

$all = $row['and_search'] ; 
    $any = $row['or_search'] ; 
    $none = $row['not_search']; 
    if((!$all) || ($all == "")) { $all = ""; } else { $all = "$all"; } 
    if((!$any) || ($any == "")) { $any = ""; } 
    if((!$none) || ($none == "")) { $none = ""; } else { $none = "$none"; } 

上記のみの単一の単語を見事に動作しますが、上記の例のようにありません検索。

どのように私はこれを達成するために変更できますか?

+1

私が正しく理解していれば、javascript + mysql reflection(SQLテーブルからフィールドを取得する)を使用する必要があります。 javascriptを使用すると、あなたが望む基準を持つフィールドを追加/削除することができます。かなり複雑です。誰かのようなハックがセミコロン(;)であるかどうかチェックして、DROP DATABASE xxxなどをタイプする必要があります – Panagiotis

答えて

0

$ all、$ any、$ noneを空白で配列に分割します。

$newAll = '("' . join('" OR "', split(' ', $all)) . '")';