gpt4 book ai didi

php - 使用下拉选择过滤信息

转载 作者:行者123 更新时间:2023-11-30 23:31:48 24 4
gpt4 key购买 nike

我的过滤系统有问题,我想过滤通知。过滤应该通过使用每个帖子都有的状态 ID 来工作,例如错误报告有状态 ID nro。 6.

这是我使用的 jQuery 脚本:

$(document).ready(function() {
$("#status_option").change(
function(){
var statusValue = $('#status_option option:selected').val();
if(statusValue == "1"){
<?php
$sql_status1="SELECT * FROM notice, user, status WHERE notice.userID = user.userID AND notice.statusID = status.statusID = '1' ORDER BY noticeID DESC";
$result_status1=mysql_query($sql_status1);
?>
}
else if(statusValue == "2"){
<?php
$sql_status2="SELECT * FROM notice, user, status WHERE notice.userID = user.userID AND notice.statusID = status.statusID AND status.statusID = '2' ORDER BY noticeID DESC";
$result_status2=mysql_query($sql_status2);
?>
}
else if(statusValue == "3"){
<?php
$sql_status3="SELECT * FROM notice, user, status WHERE notice.userID = user.userID AND notice.statusID = status.statusID AND status.statusID = '3' ORDER BY noticeID DESC";
$result_status3=mysql_query($sql_status3);
?>
}
else if(statusValue == "4"){
<?php
$sql_status4="SELECT * FROM notice, user, status WHERE notice.userID = user.userID AND notice.statusID = status.statusID AND status.statusID = '4' ORDER BY noticeID DESC";
$result_status4=mysql_query($sql_status4);
?>
}
else if(statusValue == "5"){
<?php
$sql_status5="SELECT * FROM notice, user, status WHERE notice.userID = user.userID AND notice.statusID = status.statusID AND status.statusID = '5' ORDER BY noticeID DESC";
$result_status5=mysql_query($sql_status5);
?>
}
else if(statusValue == "6"){
<?php
$sql_status6="SELECT * FROM notice, user, status WHERE notice.userID = user.userID AND notice.statusID = status.statusID AND status.statusID = '6' ORDER BY noticeID DESC";
$result_status6=mysql_query($sql_status6);
?>
}
else{
<?php
$sql_default="SELECT * FROM notice, user, status WHERE notice.userID = user.userID AND notice.statusID = status.statusID ORDER BY noticeID DESC";
$result_default=mysql_query($sql_default);
?>
}
}
);});

从下拉列表中选择状态:

<select id="status_valinta" style="width:210px" >
<option title="css/msdropdown_img/status_all.gif">All posts</option>
<option value="1" title=".../status1.gif">Notification</option>
<option value="2" title=".../status2.gif">Waiting for answer</option>
<option value="3" title=".../status3.gif">Guide</option>
<option value="4" title=".../status4.gif">Document</option>
<option value="5" title=".../status5.gif">Image</option>
<option value="6" title=".../status6.gif">Bug-report</option>

问题是,当我从下拉列表中选择我想要的状态时,没有任何反应。此外,此过滤系统应通过在同一页面中动态打开过滤后的信息来工作。

这是显示打印数据的地方:

<table width="100%" id="notices" class="ui-widget ui-widget-content">
<thead>
<tr class="ui-widget-header ">
<th>Subject</th>
<th>Sender</th>
<th>Comments</th>
<th>Timestamp</th>
</tr>
</thead>
<tbody>
<?php
while($rows=mysql_fetch_array($result)){ // Starting looping rows
?>
<tr style="background-color:<?php echo $rows['colorCode']; ?>">
<td>
<a class="opener_notice, load_data" href="notice_v2.php?id=<?php echo $rows['noticeID']; ?>">
<?php echo $rows['title']; ?>
</td>
<td><?php echo $rows['firstname']; ?> <?php echo $rows['lastname']; ?>
</td>
<td><?php echo $rows['commentID']; ?></td>
<td><?php echo date('d.m.Y, H:i:s', strtotime( $rows['sendTime'] )); ?>
</td>
</tr>
<?php
// Stopping the looping and closing the mysql connection
} mysql_close();
?>
</tbody>
</table>

最佳答案

您应该检查您正在处理的 html 页面的来源....因为我可以看到并理解在此代码段中编写的所有 php 代码将仅在服务器上执行,并且在 jquery 过滤中将仅是空格..

虽然你想实现的可以通过这样的方式实现

$(document).ready(function() {
<?php // this code will be executed on the server
$sql_status1="SELECT status_id, status_value FROM notice, user, status WHERE notice.userID = user.userID AND notice.statusID = status.statusID ORDER BY noticeID DESC"; // considering status_id, status_value are the required attributes
$result_status1=mysql_query($sql_status1);
foreach(result_status1 as $res)
$json_obj_arr[$res[status_id]] = $res[status_value]
echo 'var notices = '.json_encode($json_obj_arr).';'; //and we will have a json abject in our html
?>
var notice_json = $.parseJSON(notices); //we will parse this object
$("#status_option").change(
function(){
var statusValue = $('#status_option option:selected').val();
alert(notice_json.statusValue); //and directly access the value corresponding to statusValue in the notice_json object
}) //end on change
})// end document.ready

关于php - 使用下拉选择过滤信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10175607/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com