1

フォームに複数の選択オプションがある選択リストがあります。必要なのは、phpのsqlステートメントに複数の値を渡すことです。

選択リストの例

<select name="site_name" size="10" multiple="multiple">
              <option selected="selected">Select ...</option>
              <option>UV</option>
              <option>US</option>
              <option>PI</option>
</select>

これにより、UVまたはおよびUSまたはおよびPIがSQLステートメントの例に渡されます。

$sql = "SELECT Web_Page_Name FROM sites where Web_Page_Name =" $site_name[] ;

前のものは正しくありません、そして私は複数の値を渡すための正しいSQLステートメントを知るためにあなたの助けを探しています。

4

2 に答える 2

2

INキーワードを使用してSQLステートメントを作成できます。

SELECT Web_Page_Name FROM sites where Web_Page_Name IN ('UV', 'US', 'PI');

補足として、 SQLインジェクションの脆弱性に注意してください。

于 2012-08-18T23:33:13.257 に答える
0

私はそれを以下のように実装しました

1-選択リストコードを以下に変更しました:

<select name="site_name[]" size="10" multiple="multiple">
              <option selected="selected">Select ...</option>
              <option>UV</option>
              <option>US</option>
              <option>PI</option>
</select>

2-以下のように2ページ目のSQLステートメント

$sql = "SELECT * FROM sites WHERE Web_Page_Name IN ('"
. implode("', '", $_POST['site_name'])
. "')";

これは今私とうまく働いています

于 2012-08-19T12:58:17.557 に答える