【发布时间】:2021-10-23 21:48:35
【问题描述】:
目标: 选择一个选项并通过 ajax 获取其值并插入到查询中。 感谢您的帮助。
bugs_cards.php
<div class="filtros-categoria-sistema">
<select id="session" name="session" class="form-control">
<option value='' selected >Selecione o Sistema</option>
<option value='00000000001'>teste 1</option>
<option value='00000000002'>teste 2</option>
</select>
</div>
SQL
if (isset($_POST['workselected1'])) {
$workselected = $_POST['workselected1'];
}
$SyntaxTransactionRotas = "SELECT * FROM sup_cad_bugs_cards where painel_COD = $workselected AND card_status = 'EN' AND card_nome $nome AND card_tipo_COD $categoria ";
AJAX
$('#session').on('change', function(e){
var workselected = $(this).val();
$.ajax({
method: "POST",
url: "bugs_cards.php",
data: {workselected1: workselected},
cache:false,
success: function(data){
console.log(data);
}
});
});
【问题讨论】:
-
具体问题是什么?猜测一下,您需要在 SQL 语句中包含的值周围加上引号,并在
where子句中的值之前使用=运算符。您应该注意的主要事项是您的 PHP 对 SQL 注入攻击完全开放。您应该更改该逻辑以使用准备好的语句。 -
问题且选择选项1时,不通过ajax发送到php变量的值0000000000以插入SQL并执行查询。在这种情况下,where 子句查询应该是“SELECT * FROM sup_cad_bugs_cards WHERE painel_COD = 00000000001 ..