Quantcast
Channel: PHP Freaks: PHP Help
Viewing all articles
Browse latest Browse all 13200

Output count result to html even if 0

$
0
0

Hi,

 

I am trying to build a table with counted results.  My code works unless the count value is 0 (albeit there is likely a much cleaner way to do this and if you have time feel free to share your way) here is what I have:

 

How do I get a count of 0 if the query returns no results?

 

I should mention I get an empty table when the result is 0

<?php

// Conection Info
$con=mysqli_connect("localhost","*****","*****","*****");

// Check connection
if (mysqli_connect_errno())
echo "Failed to connect to MySQL: " . mysqli_connect_error();

// Querys

$c_nc_t1 = mysqli_query($con, "
SELECT actcaseld, type, encdate, COUNT(type) AS c_nc_t1_type_count FROM `Stats`
WHERE type='Type 1' AND actcaseld='New Client' AND encdate BETWEEN
(SELECT bdate FROM `ReportRange` WHERE cf_id=1)
AND
(SELECT edate FROM `ReportRange` WHERE cf_id=1)
GROUP BY type");

$c_nc_t2d = mysqli_query($con, "
SELECT actcaseld, type, encdate, COUNT(type) AS c_nc_t2d_type_count FROM `Stats`
WHERE type='Type 2 diet' AND actcaseld='New Client' AND encdate BETWEEN
(SELECT bdate FROM `ReportRange` WHERE cf_id=1)
AND
(SELECT edate FROM `ReportRange` WHERE cf_id=1)
GROUP BY type");

$c_nc_t2a = mysqli_query($con, "
SELECT actcaseld, type, encdate, COUNT(type) AS c_nc_t2a_type_count FROM `Stats`
WHERE type='Type 2 ADA' AND actcaseld='New Client' AND encdate BETWEEN
(SELECT bdate FROM `ReportRange` WHERE cf_id=1)
AND
(SELECT edate FROM `ReportRange` WHERE cf_id=1)
GROUP BY type");

$c_nc_t2ai = mysqli_query($con, "
SELECT actcaseld, type, encdate, COUNT(type) AS c_nc_t2ai_type_count FROM `Stats`
WHERE type='Type 2 ADA and Insulin' AND actcaseld='New Client' AND encdate BETWEEN
(SELECT bdate FROM `ReportRange` WHERE cf_id=1)
AND
(SELECT edate FROM `ReportRange` WHERE cf_id=1)
GROUP BY type");

$c_nc_t2i = mysqli_query($con, "
SELECT actcaseld, type, encdate, COUNT(type) AS c_nc_t2i_type_count FROM `Stats`
WHERE type='Type 2 Insulin' AND actcaseld='New Client' AND encdate BETWEEN
(SELECT bdate FROM `ReportRange` WHERE cf_id=1)
AND
(SELECT edate FROM `ReportRange` WHERE cf_id=1)
GROUP BY type");

// Output to html

//Build Headers

echo "<center><h3>Report for date range:</h3></center>";
echo "<table border='1' align='center'>
<tr>
<th></th>
<th></th>
<th>Type 1</th>
<th>Type 2 Diet</th>
<th>Type 2 ADA</th>
<th>Type 2 ADA + Insulin</th>
<th>Type 2 Insulin</th>
</tr>";


//Build Data output to html


while($row_c_nc_t1=mysqli_fetch_array($c_nc_t1)
 and $row_c_nc_t2d=mysqli_fetch_array($c_nc_t2d)
 and $row_c_nc_t2a=mysqli_fetch_array($c_nc_t2a)
 and $row_c_nc_t2ai=mysqli_fetch_array($c_nc_t2ai)
 and $row_c_nc_t2i=mysqli_fetch_array($c_nc_t2i))
  {
  echo "<tr>";
  echo "<td>Caseload</td><td>New Clients</td>
<td><center>" . $row_c_nc_t1['c_nc_t1_type_count'] . "</center></td>
<td><center>" . $row_c_nc_t2d['c_nc_t2d_type_count'] . "</center></td>
<td><center>" . $row_c_nc_t2a['c_nc_t2a_type_count'] . "</center></td>
<td><center>" . $row_c_nc_t2ai['c_nc_t2ai_type_count'] . "</center></td>
<td><center>" . $row_c_nc_t2i['c_nc_t2i_type_count'] . "</center></td>
";
  echo "</tr>";
  }
echo "</table>";

// Close Connection
mysqli_close($con);
?>

Thank you in advance for your time and wisdom!


Viewing all articles
Browse latest Browse all 13200

Trending Articles