1

我有一个简单的查询(在 mySQL 视图中),php 正在使用它来创建表:

select `swtickets`.`ownerstaffid` AS `ID`,
`swtickets`.`ownerstaffname` AS `Owner`,
sum(if((`swtickets`.`ticketstatusid` = 2),1,0)) AS `In Progress`,
sum(if((`swtickets`.`ticketstatusid` = 4),1,0)) AS `Pending Customer`,
sum(if((`swtickets`.`ticketstatusid` = 5),1,0)) AS `Customer Replied`,
sum(if((`swtickets`.`ticketstatusid` = 9),1,0)) AS `Suggested Resolution`,
sum(if((`swtickets`.`priorityid` in (3,6) and `swtickets`.`ticketstatusid` in     (2,4,5,9)),1,0)) AS `High/Critical`,
sum(if((`swtickets`.`ticketstatusid` in (2,4,5,9)),1,0)) AS `Total Workable` 
from `swtickets` where ((`swtickets`.`departmentid` = 14) 
and ownerstaffid in (select staffid from swstaff where staffgroupid=4 and isenabled =  1)
and (`swtickets`.`ownerstaffname` <> '')) group by `swtickets`.`ownerstaffname`

我在 while 循环中调用数据,但我似乎无法摆脱“ID”列,我需要调用它,因为它用作 Owner 列的超链接的目标。理想的标题是:

所有者 | 进行中 | 待定客户 | 客户回复 | 建议的分辨率 | 总工作量

php:

 $ticketloadquery = mysql_query("SELECT * from open_tickets;")
or die(mysql_error()); 

$ticketloadfield_num = mysql_num_fields($ticketloadquery);

echo "<div><h1>Work Load</h1>";
if(mysql_num_rows($ticketloadquery)==0) {
echo "<i>There are no currently unassigned tickets!</i>";
}
else{
echo "<table border='1'><tr>";
for($i=0; $i<$ticketloadfield_num; $i++)
{
$ticketloadfield = mysql_fetch_field($ticketloadquery);
echo "<td>{$ticketloadfield->name}</td>";
}
echo "</tr>\n";

while($ticketloadinfo = mysql_fetch_array( $ticketloadquery )) 
{ 

echo "<tr>"; 
echo "<td><a href='https://support.mysite.com/staff/dashboard.php?   id=".$ticketloadinfo['ID']."', target='_blank'>".$ticketloadinfo['Owner']."</a></td> "; 
echo "<td>".$ticketloadinfo['Owner'] . "</td> "; 
echo "<td>".$ticketloadinfo['In Progress'] . "</td> "; 
echo "<td>".$ticketloadinfo['Pending Customer'] . " </td>"; 
echo "<td>".$ticketloadinfo['Customer Replied'] . " </td>";
echo "<td>".$ticketloadinfo['Suggested Resolution'] . " </td>"; 

echo "<td>".$ticketloadinfo['Total Workable'] . " </td></tr>"; 
} 
echo "</div>";
echo "</table>"; 
}

有什么建议么?

4

3 回答 3

0

删除任何一个

echo "<td><a href='https://support.mysite.com/staff/dashboard.php?   id=".$ticketloadinfo['ID']."', target='_blank'>".$ticketloadinfo['Owner']."</a></td> "; 

或者

echo "<td>".$ticketloadinfo['Owner'] . "</td> "; 
于 2012-06-26T01:07:59.100 回答
0

删除只有所有者的单元格,因为它与前一个单元格相同,只是没有超链接。

于 2012-06-26T01:09:14.527 回答
0

即使您现在设法为该ID列创建一个例外,这种方法将来也会导致问题,因为您会自动从标题查询中生成列,然后您手动添加列以获取您想要的信息展示。

有两种选择:

  1. 您会自动生成所有信息,以便标题和内容始终保持同步。不建议这样做,因为您在显示信息的方式方面没有任何灵活性
  2. 也手动添加标题行。通过这种方式,您可以显示任何您想要的内容,并且您可以使用一个简单的 html 块来实现这一点。

作为旁注,我还建议在标题行中使用th元素而不是td元素。

所以你会替换:

for($i=0; $i<$ticketloadfield_num; $i++)
{
$ticketloadfield = mysql_fetch_field($ticketloadquery);
echo "<td>{$ticketloadfield->name}</td>";
}

和:

?>
<th>Owner</th>
<th>In Progress</th>
<th>Pending Customer</th>
<th>Customer Replied</th>
<th>Suggested Resolution</th>
<th>Total Workable</th>
<?php
于 2012-06-26T01:10:53.190 回答