多个 <select> 下拉列表作为 sql 参数 | PHP
Posted
技术标签:
【中文标题】多个 <select> 下拉列表作为 sql 参数 | PHP【英文标题】:multiple <select> dropdown as sql parameters | PHP 【发布时间】:2019-11-29 11:28:03 【问题描述】:我有一个基于 1 <select>
下拉值执行 sql 查询的运行代码。请问如何使用 2 个或更多 <select>
下拉菜单来执行多个查询参数?
示例。我根据accounttitle
对数据进行了排序,现在我想通过YEAR(datedue)
对accountttitle
进行排序,我该怎么做?
这是我目前得到的。
对于isset()
if(isset($_GET['accounttitle']))
$accounttitle = $_GET['accounttitle'];
$year = date('Y');
if(isset($_GET['year']))
$year = $_GET['year'];
else "PLEASE SELECT OPTION";
?>
对于<select>
<div class="col-sm-9">
<select class="form-control" id="select_account_title" style="text-transform:uppercase" required>
<option value="">PLEASE SELECT OPTION</option>
<?php while ($row = sqlsrv_fetch_array($query, SQLSRV_FETCH_ASSOC)): ?>
<option value="<?= urlencode($row['accounttitle'])?>"><?= $row['accounttitle'] ?></option>
<?php endwhile; ?>
</select>
<label>Select Year: </label>
<select class="form-control input-sm" id="select_year">
<?php
for($i=2013; $i<=2033; $i++)
$selected = ($i==$year)?'selected':'';
echo "
<option value='".$i."' ".$selected.">".$i."</option>
";
?>
</select>
</div>
对于SQL
$sql = "SELECT referenceno, employeeidno, accounttitle, 'ON PROGRESS' as debit, postedby, approvedby, notedby, credit FROM earningsamendment where accounttitle= '$accounttitle' and YEAR(datedue)='$year'";
$query = sqlsrv_query($conn, $sql, array(), array("Scrollable" => SQLSRV_CURSOR_KEYSET));
while($row = sqlsrv_fetch_array($query, SQLSRV_FETCH_ASSOC))
这是我的担心。
$(function()
$('#select_account_title').change(function()
window.location.href = 'earnings_amendment.php?accounttitle='+$(this).val();
);
);
</script>
如何启用<script>
读取 2 个参数?喜欢
$(function()
$('#select_account_title').change(function()
window.location.href = 'earnings_amendment.php?accounttitle='+$(accounttitle).val()'&year='+$(year).val();
);
);
</script>
还是类似的?
【问题讨论】:
@Dharman 对此进行了说明。一旦一切正常,我会修复一切。感谢您的提醒。 【参考方案1】:您需要使用多个选择器进行 on 更改。
$(document).on('change', '#select_account_title, #select_year', function()
var account_title = $("#select_account_title").val();
var year = $("#select_year").val();
window.location.href = 'earnings_amendment.php?accounttitle='+account_title+'&year='+year;
);
【讨论】:
谢谢您,先生!这正是我所需要的!如果你不介意的话,你是救生员。你能给我一个更好的学习链接吗<script>
我很难理解互联网上的指南。以上是关于多个 <select> 下拉列表作为 sql 参数 | PHP的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 jquery json 和 php 更改多个下拉列表