php将多个值从选择列表传递到sql

php将多个值从选择列表传递到sql,php,mysql,sql,Php,Mysql,Sql,我有一个带有多个选择选项的表单has select list,我需要的是将多个值传递给php中的sql语句 选择列表的示例 <select name="site_name" size="10" multiple="multiple"> <option selected="selected">Select ...</option> <option>UV</option>

我有一个带有多个选择选项的表单has select list,我需要的是将多个值传递给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>

上一条不正确,我正在寻求您的帮助,以了解传递多个值的正确sql语句。

您可以使用以下关键字构造sql语句:


作为旁注,请注意。

我已经按如下方式实现了它

1-我已将选择列表代码更改为以下代码:

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

这对我来说很好

感谢您的回复,我想使用in子句作为select列表中选定值的数组。它们不是固定值。@Pipo您必须在PHP中动态生成该字符串。没有数组参数类型。正如我在回答中所说的,请注意。再次感谢,我将检查此来源以了解您是否听从了我的建议。此答案中的代码易受攻击。您不能直接在
$\u POST
变量上调用
内爆()。每个值都必须先进行编码。您好,非常感谢您的帮助和关心,请回复我,我已经尝试了上述方法,并且它在大多数浏览器上都可以正常工作,现在我有了sql语句中的值并显示了结果。
SELECT Web_Page_Name FROM sites where Web_Page_Name IN ('UV', 'US', 'PI');
<select name="site_name[]" size="10" multiple="multiple">
              <option selected="selected">Select ...</option>
              <option>UV</option>
              <option>US</option>
              <option>PI</option>
</select>
$sql = "SELECT * FROM sites WHERE Web_Page_Name IN ('"
. implode("', '", $_POST['site_name'])
. "')";