0

以下のコードを使用するフォームがあります:

<select name="ptype">
    <option selected="selected" value="">Any</option>
    <option value="1">1</option>
    <option value="2">2</option>
</select>

さて、phpページはmysqlの「Any」フィールドをどのように処理できますか。以下のコードを試しましたが、プロセスページでは機能しませんでした:

$q = mysql_query("SELECT * FROM `listing` WHERE ptype='{$_POST['ptype']}'");
echo mysql_error();
while($r=mysql_fetch_array($q)){

}

「any」を使用する複数の選択オプションがあり、すべてのフィールドが同じクエリで実行されます。ここで any はすべての値を意味します

エラーは何ですか?または「任意の」値を使用する方法は?

4

4 に答える 4

0

個別に確認してください:

SELECT *
FROM `listing`
WHERE '{$_POST['ptype']}' = 'ANY' or ptype='{$_POST['ptype']}'
于 2013-08-11T15:52:13.013 に答える
0

オプションが の場合any、プログラムでクエリを次のように変更します。

$q=mysql_query("SELECT * FROM `listing`");
于 2013-08-11T15:52:52.447 に答える
0

両方が機能することを意味する場合は、値がないany場合はクエリから WHERE 句を削除するだけです (または値を指定してそれを確認します)。$_POST['ptype']

于 2013-08-11T15:53:21.677 に答える