我在尝试将“全部”选项添加到下拉列表中时遇到一些麻烦(完全用 php 制作)。 代码如下:
// SLA list
$sql_loc = "SELECT id, name AS name FROM glpi_slas ".$entidade_sw."
ORDER BY `name` ASC ";
$result_loc = $DB->query($sql_loc);
$arr_sla = array();
$arr_sla[0] = "-- ". __('Select a SLA', 'dashboard') . " --" ;
while ($row_result = $DB->fetch_assoc($result_loc))
{
$v_row_result = $row_result['id'];
$arr_sla[$v_row_result] = $row_result['name'] ;
}
$name = 'sel_sla';
$options = $arr_sla;
$selected = $id_sla;
有人知道该怎么做吗? 提前致谢。
P.S.:“全部”选项只是选择所有查询结果,而不是一个(现在是这样)。这样,结果就不会仅限于一项 SLA。
编辑:我应该怎么做才能让“选择 SLA1”选项显示所有票证? (ID 可以从 1 到最后一个可能的值 [在这种情况下为 5])
编辑 2:这是选择门票的代码:
$sql_cham =
"SELECT glpi_tickets.id AS id, glpi_tickets.name AS descr, glpi_tickets.date AS date, glpi_tickets.solvedate as solvedate,
glpi_tickets.status, glpi_tickets.due_date AS duedate, sla_waiting_duration AS slawait, glpi_tickets.type,
FROM_UNIXTIME( UNIX_TIMESTAMP( `glpi_tickets`.`solvedate` ) , '%Y-%m' ) AS date_unix, AVG( glpi_tickets.solve_delay_stat ) AS time,
TIMEDIFF(glpi_tickets.atdate, glpi_tickets.solvedate) AS realtime
FROM glpi_tickets
WHERE glpi_tickets.slas_id = ".$id_sla."
AND glpi_tickets.is_deleted = 0
AND glpi_tickets.date ".$datas2."
AND glpi_tickets.status IN ".$status."
".$entidade."
GROUP BY id DESC
ORDER BY id DESC ";
最佳答案
小心,你的/这个SQL又不安全SQL注入(inject)
使用这个:
"WHERE glpi_tickets.slas_id LIKE ".(empty($id_sla)?'"%"':$id_sla)."
-- instated of this
-- WHERE glpi_tickets.slas_id = ".$id_sla."
关于php - 将 "All"选项添加到下拉列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33719451/