Creating a Matrix table
Posted: Tue Sep 07, 2010 1:44 am
Hi,
I'm brand new to the forum; just introduced myself here :
viewtopic.php?f=6&t=120872
I'm having a bit of trouble trying to create a matrix; I'm still coding proceduraly as I haven't really ventured into OOP yet. Can someone please help me to see where I've gone wrong.
Effectively this code (and I've censored the code to remove some sensitive information) should produce a table with the headings pertaining to companies that
are effected by a certain problem. So there is a list of problems, then either the word Yes or No should appear under the company/department according to
whether or not the company is effected by that problem.
The database and everything connects, the table generates, but for some reason, and I haven't figured it out yet, the following code gets executed even when it's not supposed to. In other words, I get a whole heap of redundant cells (td's) in each row (tr). I'm thinking it could be because multiple departments are effected by an issue.
Thanks in advance.
Example HTML Output of script:
I'm brand new to the forum; just introduced myself here :
viewtopic.php?f=6&t=120872
I'm having a bit of trouble trying to create a matrix; I'm still coding proceduraly as I haven't really ventured into OOP yet. Can someone please help me to see where I've gone wrong.
Effectively this code (and I've censored the code to remove some sensitive information) should produce a table with the headings pertaining to companies that
are effected by a certain problem. So there is a list of problems, then either the word Yes or No should appear under the company/department according to
whether or not the company is effected by that problem.
The database and everything connects, the table generates, but for some reason, and I haven't figured it out yet, the following code gets executed even when it's not supposed to. In other words, I get a whole heap of redundant cells (td's) in each row (tr). I'm thinking it could be because multiple departments are effected by an issue.
Thanks in advance.
Code: Select all
else {
echo "\t\t\t<td>NO</td>\n";
}
Code: Select all
<?php
include("dbc.php");
//actions for existing problem
echo " <h2>Table of Contents</h2> ";
$result = mysql_query("SELECT * FROM problem where problem_number LIKE '%PBI%' ORDER BY problem_approveddate desc");
echo "<table border='1'>
<tr>
<th>#</th>
<th>Short Description</th>
<th>SomeDepartment</th>
<th>AnotherDepartment</th>
<th>OtherDepartment</th>
<th>DifferentDepartment</th>
<th>SomeoneElse</th>
<th>AnotherCustomer</th>
<th>SomeClient</th>
<th>Someotherclient</th>
<th>Someuserbase</th>
<th>somebuilding</th>
</tr>\n\n";
while($row = mysql_fetch_array($result)) {
$problem_id = $row['problem_id'];
echo "\t\t\t<tr>\n";
echo "\t\t\t<td>" . $row['problem_number'] . "</td>\n";
echo "\t\t\t<td>" . $row['problem_short'] . "</td>\n";
$departmentresult = mysql_query("SELECT department.*, relate_problem_department.* FROM problemmanagement.relate_problem_department INNER JOIN problemmanagement.department ON relate_problem_department.department_id = department.department_id WHERE relate_problem_department.problem_id = \"$row[problem_id]\"");
while($departmentsimpacted = mysql_fetch_array($departmentresult)) {
if (($departmentsimpacted[department_name]) == "SomeDepartment") {
echo "\t\t\t<td><b>YES</b></td>\n";
}
else {
echo "\t\t\t<td>NO</td>\n";
}
if (($departmentsimpacted[department_name]) == "AnotherDepartment") {
echo "\t\t\t<td><b>YES</b></td>\n";
}
else {
echo "\t\t\t<td>NO</td>\n";
}
if (($departmentsimpacted[department_name]) == "OtherDepartment") {
echo "\t\t\t<td><b>YES</b></td>\n";
}
else {
echo "\t\t\t<td>NO</td>\n";
}
if (($departmentsimpacted[department_name]) == "DifferentDepartment") {
echo "\t\t\t<td><b>YES</b></td>\n";
}
else {
echo "\t\t\t<td>NO</td>\n";
}
if (($departmentsimpacted[department_name]) == "SomeoneElse") {
echo "\t\t\t<td><b>YES</b></td>\n";
}
else {
echo "\t\t\t<td>NO</td>\n";
}
if (($departmentsimpacted[department_name]) == "AnotherCustomer") {
echo "\t\t\t<td><b>YES</b></td>\n";
}
else {
echo "\t\t\t<td>NO</td>\n";
}
if (($departmentsimpacted[department_name]) == "SomeClient") {
echo "\t\t\t<td><b>YES</b></td>\n";
}
else {
echo "\t\t\t<td>NO</td>\n";
}
if (($departmentsimpacted[department_name]) == "Someotherclient") {
echo "\t\t\t<td><b>YES</b></td>\n";
}
else {
echo "\t\t\t<td>NO</td>\n";
}
if (($departmentsimpacted[department_name]) == "Someuserbase") {
echo "\t\t\t<td><b>YES</b></td>\n";
}
else {
echo "\t\t\t<td>NO</td>\n";
}
if (($departmentsimpacted[department_name]) == "somebuilding") {
echo "\t\t\t<td><b>YES</b></td>\n";
}
else {
echo "\t\t\t<td>NO</td>\n";
}
echo "\t\t\t</tr>\n\n";
}
}
echo "</table>";
?>
Code: Select all
<h2>Table of Contents</h2>
<table border='1'>
<tr>
<th>#</th>
<th>Short Description</th>
<th>SomeDepartment</th>
<th>AnotherDepartment</th>
<th>OtherDepartment</th>
<th>DifferentDepartment</th>
<th>SomeoneElse</th>
<th>AnotherCustomer</th>
<th>SomeClient</th>
<th>Someotherclient</th>
<th>Someuserbase</th>
<th>somebuilding</th>
</tr>
<tr>
<td>PBI123</td>
<td>Some Problem</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td><b>YES</b></td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
</tr>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td><b>YES</b></td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
</tr>
<tr>
<td>PBI124</td>
<td>Some Other Problem</td>
<td><b>YES</b></td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
</tr>
<td>NO</td>
<td><b>YES</b></td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
</tr>
<td>NO</td>
<td>NO</td>
<td><b>YES</b></td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
</tr>
<tr>
<td>PBI125</td>
<td>Some New Problem</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td><b>YES</b></td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
</tr>
<tr>
<td>PBI126</td>
<td>Some Different Problem</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td><b>YES</b></td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
<td>NO</td>
</tr>
</table>