I have a page a pulldown with dates selected from a database, a radio group (30 day comparison, 365 day comparison), and another pulldown menu (Field Mangers/Field Techs).
When the users first load the page, they are presented with today's data sorted by Field Manager/Field Tech.
I can run the 30 day and 365 day comparison, but it also returns an empty row of data when that data doesn't exist in the db, which is what it's written to do. However, I can't think of a simple way to get it done.
Here's my code:
<?php require_once('../Connections/Reports.php'); mysql_select_db($database_Reports, $Reports);
$query_rsDate = "select distinct Date from GSM ORDER BY GSM.Date DESC";
$rsDate = mysql_query($query_rsDate, $Reports) or die(mysql_error());
$row_rsDate = mysql_fetch_assoc($rsDate);
$totalRows_rsDate = mysql_num_rows($rsDate);
mysql_select_db($database_Reports, $Reports);
$query_rsFOMName = "SELECT distinct * FROM GSM_Alias";
$rsFOMName = mysql_query($query_rsFOMName, $Reports) or die(mysql_error());
$row_rsFOMName = mysql_fetch_assoc($rsFOMName);
$totalRows_rsFOMName = mysql_num_rows($rsFOMName);
if ($_GET['export'] == 'excel'){
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=24hr-$datadate.xls");
header("Pragma: no-cache");
header("Expires: 0");
?>
<html>
<head>
<title>Untitled Document</title>
<link href="http://172.18.154.64/db/styles/style.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
-->
</style>
<?
}?>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="../styles/style.css" rel="stylesheet" type="text/css">
<?
}
?>
</head>
<body>
<?
echo "Viewing data for: $datadate <br>";
if ($_GET['30day'] == true){
//echo $yesterday;
}?>
<table border="0" cellspacing="0" bgcolor="#d5d5e0">
<tr>
<th scope="row">Date</th>
<th scope="row">BSC</th>
<th scope="row">Cell_Name</th>
<th scope="row">Cell</th>
<th scope="row">Drops</th>
<th scope="row">Attempts</th>
<th scope="row">Blocks</th>
<th scope="row">Volume</th>
<th scope="row">HO Attempts</th>
<th scope="row">HO Completions</th>
<th scope="row">Intersystem HO Attempts</th>
<th scope="row">Intersystem HO Completions</th>
<th scope="row">%Drop</th>
<th scope="row">%Block</th>
<th scope="row">%HO Completions </th>
<th scope="row">FOM</th>
</tr>
<?
if ($_GET['30day'] == true){
$yesterday = strftime("%Y-%m-%d", mktime(0, 0, 0, date("m"),date("d")-1,date("Y")));
echo $yesterday;
$i=1;
echo "<br>" . $yesterday;
do {
$yesterday = strftime("%Y-%m-%d", mktime(0, 0, 0, date("m"),date("d")-$i,date("Y")));
$i++;
$fom = $_GET['fom'];
mysql_select_db($database_Reports, $Reports);
$query_rsFOMAll = "SELECT DISTINCT GSM.Date AS Date,
SUM(GSM.BSC) AS BSC,
SUM(GSM.Cell_Name) AS Cell_Name,
SUM(GSM.Cell) AS Cell,
SUM(GSM.Drops) AS Drops,
SUM(GSM.Attempts) AS Attempts,
SUM(GSM.Blocks) AS Blocks,
SUM(GSM.Volume) AS Volume,
SUM(GSM.HO_att) AS 'HO Attempts',
SUM(GSM.HO_comp) AS 'HO Completions',
SUM(GSM.intersystem_HO_att) AS 'Intersystem HO attempts',
SUM(GSM.intersystem_HO_comp) AS 'Intersystem HO Completions',
GSM_Alias.FOM
FROM GSM
LEFT OUTER JOIN GSM_Alias ON
GSM.FOM = GSM_Alias.id
WHERE GSM.FOM = '$fom' AND GSM.Date='$yesterday'
GROUP BY GSM.Date";
$rsFOMAll = mysql_query($query_rsFOMAll, $Reports) or die(mysql_error());
$row_rsFOMAll = mysql_fetch_assoc($rsFOMAll);
$totalRows_rsFOMAll = mysql_num_rows($rsFOMAll);
?>
<tr align="right" valign="bottom">
<td><?php echo $row_rsFOMAll['Date']; ?></td>
<td><?php echo $row_rsFOMAll['BSC']; ?></td>
<td><?php echo $row_rsFOMAll['Cell_Name']; ?></td>
<td><?php echo $row_rsFOMAll['Cell']; ?></td>
<td><?php echo $row_rsFOMAll['Drops']; ?></td>
<td><?php echo $row_rsFOMAll['Attempts']; ?></td>
<td><?php echo $row_rsFOMAll['Blocks']; ?></td>
<td><?php echo $row_rsFOMAll['Volume']; ?></td>
<td><?php echo $row_rsFOMAll['HO Attempts']; ?></td>
<td><?php echo $row_rsFOMAll['HO Completions']; ?></td>
<td><?php echo $row_rsFOMAll['Intersystem HO attempts']; ?></td>
<td><?php echo $row_rsFOMAll['Intersystem HO Completions']; ?></td>
<td><?php echo @round($row_rsFOMAll['Drops'] / $row_rsFOMAll['Volume'],4) * 100; ?>%</td>
<td><?php echo @round($row_rsFOMAll['Blocks'] / $row_rsFOMAll['Attempts'],4) * 100; ?>%</td>
<td><?php
$ho_att = $row_rsFOMAll['HO Attempts'] + $row_rsFOMAll['Intersystem HO attempts'];
$ho_comp = $row_rsFOMAll['HO Completions'] + $row_rsFOMAll['Intersystem HO Completions'];
echo @round( $ho_comp /$ho_att,4) * 100; ?>%</td>
<td><?php echo $row_rsFOMAll['FOM']; ?></td>
</tr>
<?php } while ($i < 32);
}else
if ($_GET['365day'] == true){
echo "BLAH BLAH BLAH BLAH!!!";
$yesterday = strftime("%Y-%m-%d", mktime(0, 0, 0, date("m"),date("d")-1,date("Y")));
echo $yesterday;
$i=1;
echo "<br>" . $yesterday;
do {
$yesterday = strftime("%Y-%m-%d", mktime(0, 0, 0, date("m"),date("d")-$i,date("Y")));
$i++;
$fom = $_GET['fom'];
mysql_select_db($database_Reports, $Reports);
$query_rsFOMAll = "SELECT DISTINCT GSM.Date AS Date,
SUM(GSM.BSC) AS BSC, SUM(GSM.Cell_Name) AS Cell_Name,
SUM(GSM.Cell) AS Cell, SUM(GSM.Drops) AS Drops,
SUM(GSM.Attempts) AS Attempts, SUM(GSM.Blocks) AS Blocks,
SUM(GSM.Volume) AS Volume,
SUM(GSM.HO_att) AS 'HO Attempts',
SUM(GSM.HO_comp) AS 'HO Completions',
SUM(GSM.intersystem_HO_att) AS 'Intersystem HO attempts',
SUM(GSM.intersystem_HO_comp) AS 'Intersystem HO Completions',
GSM_Alias.FOM
FROM GSM LEFT OUTER JOIN
GSM_Alias ON GSM.FOM = GSM_Alias.id
WHERE GSM.FOM = '$fom' AND
GSM.Date='$yesterday' GROUP BY GSM.Date";
$rsFOMAll = mysql_query($query_rsFOMAll, $Reports) or die(mysql_error());
$row_rsFOMAll = mysql_fetch_assoc($rsFOMAll);
$totalRows_rsFOMAll = mysql_num_rows($rsFOMAll);
?>
<tr align="right" valign="bottom">
<td><?php echo $row_rsFOMAll['Date']; ?></td>
<td><?php echo $row_rsFOMAll['BSC']; ?></td>
<td><?php echo $row_rsFOMAll['Cell_Name']; ?></td>
<td><?php echo $row_rsFOMAll['Cell']; ?></td>
<td><?php echo $row_rsFOMAll['Drops']; ?></td>
<td><?php echo $row_rsFOMAll['Attempts']; ?></td>
<td><?php echo $row_rsFOMAll['Blocks']; ?></td>
<td><?php echo $row_rsFOMAll['Volume']; ?></td>
<td><?php echo $row_rsFOMAll['HO Attempts']; ?></td>
<td><?php echo $row_rsFOMAll['HO Completions']; ?></td>
<td><?php echo $row_rsFOMAll['Intersystem HO attempts']; ?></td>
<td><?php echo $row_rsFOMAll['Intersystem HO Completions']; ?></td>
<td><?php echo @round($row_rsFOMAll['Drops'] / $row_rsFOMAll['Volume'],4) * 100; ?>%</td>
<td><?php echo @round($row_rsFOMAll['Blocks'] / $row_rsFOMAll['Attempts'],4) * 100; ?>%</td>
<td><?php
$ho_att = $row_rsFOMAll['HO Attempts'] + $row_rsFOMAll['Intersystem HO attempts'];
$ho_comp = $row_rsFOMAll['HO Completions'] + $row_rsFOMAll['Intersystem HO Completions'];
echo @round( $ho_comp /$ho_att,4) * 100; ?>%</td>
<td><?php echo $row_rsFOMAll['FOM']; ?></td>
</tr>
<?php } while ($i < 366);
}else
if(isset($_GET['date'])){
$datadate = $_GET['date'];
}else
$datadate = $row_rsDate['Date'];
mysql_select_db($database_Reports, $Reports);
if (isset($_GET['fom'])){
$fom = $_GET['fom'];
$query_rsFOMAll = "SELECT DISTINCT GSM.Date,
GSM.BSC,
GSM.Cell_Name,
GSM.Cell,
GSM.Drops,
GSM.Attempts,
GSM.Blocks,
GSM.Volume,
GSM.HO_att AS 'HO Attempts',
GSM.HO_comp AS 'HO Completions',
GSM.intersystem_HO_att AS 'Intersystem HO attempts',
GSM.intersystem_HO_comp AS 'Intersystem HO Completions',
GSM_Alias.FOM FROM GSM
LEFT OUTER JOIN GSM_Alias
ON GSM.FOM = GSM_Alias.id
WHERE GSM.FOM = '$fom'
AND GSM.Date='$datadate'";
}else{
$query_rsFOMAll = "SELECT DISTINCT GSM.Date,
GSM.BSC,
GSM.Cell_Name,
GSM.Cell,
GSM.Drops,
GSM.Attempts,
GSM.Blocks,
GSM.Volume,
GSM.HO_att AS 'HO Attempts',
GSM.HO_comp AS 'HO Completions',
GSM.intersystem_HO_att AS 'Intersystem HO attempts',
GSM.intersystem_HO_comp AS 'Intersystem HO Completions',
GSM_Alias.FOM FROM GSM
LEFT OUTER JOIN GSM_Alias
ON GSM.FOM = GSM_Alias.id
WHERE GSM.Date='$datadate'";}
$rsFOMAll = mysql_query($query_rsFOMAll, $Reports) or die(mysql_error());
$row_rsFOMAll = mysql_fetch_assoc($rsFOMAll);
$totalRows_rsFOMAll = mysql_num_rows($rsFOMAll);
do {?>
<tr align="right" valign="bottom">
<td><?php echo $row_rsFOMAll['Date']; ?></td>
<td><?php echo $row_rsFOMAll['BSC']; ?></td>
<td><?php echo $row_rsFOMAll['Cell_Name']; ?></td>
<td><?php echo $row_rsFOMAll['Cell']; ?></td>
<td><?php echo $row_rsFOMAll['Drops']; ?></td>
<td><?php echo $row_rsFOMAll['Attempts']; ?></td>
<td><?php echo $row_rsFOMAll['Blocks']; ?></td>
<td><?php echo $row_rsFOMAll['Volume']; ?></td>
<td><?php echo $row_rsFOMAll['HO Attempts']; ?></td>
<td><?php echo $row_rsFOMAll['HO Completions']; ?></td>
<td><?php echo $row_rsFOMAll['Intersystem HO attempts']; ?></td>
<td><?php echo $row_rsFOMAll['Intersystem HO Completions']; ?></td>
<td><?php echo @round($row_rsFOMAll['Drops'] / $row_rsFOMAll['Volume'],4) * 100; ?>%</td>
<td><?php echo @round($row_rsFOMAll['Blocks'] / $row_rsFOMAll['Attempts'],4) * 100; ?>%</td>
<td><?php
$ho_att = $row_rsFOMAll['HO Attempts'] + $row_rsFOMAll['Intersystem HO attempts'];
$ho_comp = $row_rsFOMAll['HO Completions'] + $row_rsFOMAll['Intersystem HO Completions'];
echo @round( $ho_comp /$ho_att,4) * 100; ?>%</td>
<td><?php echo $row_rsFOMAll['FOM']; ?></td>
</tr>
<?php } while ($row_rsFOMAll = mysql_fetch_assoc($rsFOMAll)); ?>
</table>
</body>
</html>
<?php
mysql_free_result($rsFOMAll);
mysql_free_result($rsDate);
mysql_free_result($rsFOMName);
?>