入力内容に基づいてクエリが結果を検索できるように、フォーム データを SELECT クエリに投稿することはできますか?
たとえば、次の 3 つのフィールドがあります。
マーケティング契約番号: _ __ _ __
会社 ID: _ __ _ __ _ _
開始日: _ __ _ __ _ _
マーケティング契約番号がわからず、マーケティング契約番号ではなく会社 ID で検索したいとします。または、特定の日付 (または日付の範囲) に開始されたプロモーションを見つけたい場合は、開始日を入力するだけで、他の 2 つの日付には何も入力しません。
現在、私のクエリは次のとおりです。
$query = sprintf("SELECT * FROM Items, Promotions, Vendor_Prices, Vendors, Sales_Accounts
WHERE Items.itemid = Promotions.itemid AND
Vendors.vendorid = Promotions.vendorid AND
Vendor_Prices.vendorid = Vendors.vendorid AND
Vendor_Prices.itemid = Items.itemid AND
promoid = '$man'");
$man はマーケティング契約番号の投稿情報です。これが少し混乱している場合は申し訳ありませんが、必要に応じて明確にすることができます。
編集:
私はそれを理解しました。WHERE フィールドのクエリを変更して、「=」ではなく OR と LIKE を使用するようにしました。
promoid LIKE '$man' OR Vendors.vendorid LIKE '$cid' OR startdate = '$pstart'