从下拉列表中选择值

时间:2013-12-31 16:10:44

标签: php jquery mysql

我已经用数据库中的信息填充了一个下拉列表,我现在需要选择要在查询中使用的值,我明白我需要使用

var variable = $('#filter option:selected').val();

然而,我如何在查询中使用此变量。

选择语句php

$menu="
<select name='filter' id='filter'>          
". $options . "
</select>                           
<br>";  

查询

$queryFilms = "SELECT EventName FROM eventsrush WHERE EventName = '".$variable.""; 
$resultFilms = $mysqli->query($queryFilms); 
$rowFilms = $resultFilms->fetch_assoc();

1 个答案:

答案 0 :(得分:1)

当表单发布到服务器时,服务器端代码可以获取select元素的选定值(假设它是表单的一部分),如下所示:

$_POST['filter']

这对应于表单中name元素的select属性。

注意: 您试图将发布的值直接连接到SQL查询中,并对数据库执行该查询。这会将您的代码打开到所谓的SQL Injection。您希望(在阅读该链接页面之后)从使用字符串连接的SQL语句切换到使用某种形式的预准备语句。

重点是从不信任从客户端提交的数据,并且从不将数据视为可执行代码。通过在SQL语句中使用该字符串,您将其视为要在数据库上执行的代码。您不希望用户在您的服务器上执行自己的代码。准备语句将输入隔离为数据,将其视为字符串值而不是代码。