- Fixed display bug on admin page with drop-down selection of number of lines/rows to display per page.

- Fixed getTableFields() to return valid data on empty tables.
- Added placeholder text for empty query results.
This commit is contained in:
Frank Fegert 2009-06-05 10:50:25 +00:00
parent 00027e1f98
commit 01fb98ed1c
3 changed files with 38 additions and 33 deletions

View File

@ -233,9 +233,9 @@ if ($_POST["css"] != "") {
$sqlresth = $adodb->fetchArrayDB($sqlth); $sqlresth = $adodb->fetchArrayDB($sqlth);
$colarray = array(); $colarray = array();
$colarray['id'] = $_POST['id']; $colarray['id'] = $_POST['id'];
$set = ""; $set = array();
$sqlcols = ""; $sqlcols = array();
$sqlvals = ""; $sqlvals = array();
// get all table fields to be selected // get all table fields to be selected
foreach ($sqlresth as $col) { foreach ($sqlresth as $col) {
@ -252,34 +252,36 @@ if ($_POST["css"] != "") {
// if ($val != "") { // if ($val != "") {
if ($_POST['AddSave'] == "Save") { if ($_POST['AddSave'] == "Save") {
$colarray["`".$col['Field']."`"] = $val; $colarray["`".$col['Field']."`"] = $val;
$sqlcols .= $col['Field']; $val = "'".$val."'";
$sqlvals .= "'".$val."'"; array_push($sqlcols, $col['Field']);
$sqlcols .= ", "; array_push($sqlvals, $val);
$sqlvals .= ", ";
} else if ($_POST['EditSave'] == "Save") { } else if ($_POST['EditSave'] == "Save") {
$colarray["`".$col['Field']."`"] = $val; $colarray["`".$col['Field']."`"] = $val;
$set .= $col['Field']."='".$val."'"; array_push($set, $col['Field']."='".$val."'");
$set .= ", ";
} }
// } // }
} }
} }
$sqlcols = ereg_replace(", $", "", $sqlcols);
$sqlvals = ereg_replace(", $", "", $sqlvals);
if ($_POST['AddSave'] == "Save") { if ($_POST['AddSave'] == "Save") {
$sql = "INSERT into cfg_".$_GET['q']." (".$sqlcols.") values (".$sqlvals.")"; $sql = "INSERT into cfg_".$_GET['q']." (".(implode(",", $sqlcols)).") values (".(implode(",", $sqlvals)).")";
} else if ($_POST['EditSave'] == "Save") { } else if ($_POST['EditSave'] == "Save") {
$sql = "UPDATE cfg_".$_GET['q']." set ".$set." where id='".$_POST['id']."' LIMIT 1"; $sql = "UPDATE cfg_".$_GET['q']." set ".(implode(",", $set))." where id='".$_POST['id']."' LIMIT 1";
} }
$adodb->updateDB("cfg_".$_GET['q'], $colarray, 'id'); $adodb->updateDB("cfg_".$_GET['q'], $colarray, 'id');
} }
echo "<form action=".$_SERVER['PHP_SELF']."?q=".$tsmmonitor->GETVars['qq']."&m=".$tsmmonitor->GETVars['menu']." method='post'>"; echo "<form action=".$_SERVER['PHP_SELF']."?q=".$tsmmonitor->GETVars['qq']."&m=".$tsmmonitor->GETVars['menu']." method='post'>";
echo "<table class='zebra'>"; echo "<table class='zebra'>";
echo $tsmmonitor->getTableheader(); $thead = $tsmmonitor->getTableheader();
echo $tsmmonitor->getAdminTables("list"); echo $thead["header"];
$tbody = $tsmmonitor->getAdminTables("list");
if ($tbody != "") {
echo $tbody;
} else {
echo "<tr class='d0'><td colspan='".($thead["numfields"]+1)."' align='center'>No entries found in database.</td></tr>";
}
$nav = $tsmmonitor->showPageNavigation("40"); $nav = $tsmmonitor->showPageNavigation("40");
if ($nav!="") { if ($nav!="") {
echo "<tr><td colspan='0' align='center' class='footer'><a class='navhead'>".$nav."</a></td></tr>"; echo "<tr><td colspan='".($thead["numfields"]+1)."' align='center' class='footer'><a class='navhead'>".$nav."</a></td></tr>";
} }
echo "</table>"; echo "</table>";
echo "<input type='submit' class='button' name='Add' value='Add' onclick='submit();'>"; echo "<input type='submit' class='button' name='Add' value='Add' onclick='submit();'>";

View File

@ -570,7 +570,7 @@ class TSMMonitor {
$tableheader = $tableheader."<th colspan=2><a class='navhead'></a></th>"; $tableheader = $tableheader."<th colspan=2><a class='navhead'></a></th>";
} }
$tableheader=$tableheader."</tr>"; $tableheader=$tableheader."</tr>";
return $tableheader; return array("numfields" => sizeof($fieldnames), "header" => "$tableheader");
} }
@ -701,23 +701,18 @@ class TSMMonitor {
* @return void * @return void
*/ */
function getTableFields($tablename="") { function getTableFields($tablename="") {
$sqltf = "SHOW COLUMNS FROM ".$tablename;
$sqlth = "SELECT * from ".$tablename." LIMIT 1"; $sqlrestf = $this->adodb->fetchArrayDB($sqltf);
$fieldnames = array();
$sqlresth = $this->adodb->fetchArrayDB($sqlth);
$columnnames = "";
// get all table fields to be selected // get all table fields to be selected
foreach ($sqlresth as $row) { foreach ($sqlrestf as $field) {
foreach ($row as $colname => $colval) { if ($field['Field'] != "timestamp") {
if ($colname != "timestamp") { $tmp_field = "`".$field['Field']."`";
$columnnames .= "`".$colname."`"; array_push($fieldnames, $tmp_field);
if ( $i < $numfields-1) $columnnames .= ", ";
} }
} }
} return implode(",", $fieldnames);
$columnnames = ereg_replace(", $", "", $columnnames);
return $columnnames;
} }
@ -1489,6 +1484,9 @@ class TSMMonitor {
$ret = array(); $ret = array();
while (list ($key, $val) = each ($rows)) { while (list ($key, $val) = each ($rows)) {
$ret[$val['servername']] = (array)$val; $ret[$val['servername']] = (array)$val;
if ($retArray["defaultserver"] == "") {
$retArray["defaultserver"] = $val['servername'];
}
if ($val['default'] == 1) { if ($val['default'] == 1) {
$retArray["defaultserver"] = $val['servername']; $retArray["defaultserver"] = $val['servername'];
} }

View File

@ -185,11 +185,16 @@ include_once "includes/page_head.php";
} }
echo "<table class='zebra'>"; echo "<table class='zebra'>";
$thead = $tsmmonitor->getTableheader(); $thead = $tsmmonitor->getTableheader();
echo $thead; echo $thead["header"];
echo $tsmmonitor->execute('table'); $tbody = $tsmmonitor->execute('table');
if ($tbody != "") {
echo $tbody;
} else {
echo "<tr class='d0'><td colspan='".$thead["numfields"]."' align='center'>No entries found in database.</td></tr>";
}
$nav = $tsmmonitor->showPageNavigation("40"); $nav = $tsmmonitor->showPageNavigation("40");
if ($nav != "") { if ($nav != "") {
echo "<tr><td colspan='".substr_count($thead, "<th>")."' align='center' class='footer'><a class='navhead'>".$nav."</a></td></tr>"; echo "<tr><td colspan='".$thead["numfields"]."' align='center' class='footer'><a class='navhead'>".$nav."</a></td></tr>";
} }
echo "</table>"; echo "</table>";
} }