Example #1
1
    $os = $regs[1];
    // this looks better under WinX
    if (eregi("Win", $os)) {
        $crlf = "\r\n";
    }
}
$orig_query = $sql_query;
// $sql_query = str_replace($crlf, "", $sql_query);
$pieces = noQuoteSplit($sql_query, ";", "'");
// $pieces = explode($sql_query, ";");
if (count($pieces) == 1) {
    $sql_query = ereg_replace(";\$", "", trim($sql_query));
    include "sql.php";
    exit;
}
for ($i = 0; $i < count($pieces); $i++) {
    if (!$from_file) {
        $pieces[$i] = stripslashes($pieces[$i]);
    }
    $pieces[$i] = trim($pieces[$i]);
    if (!empty($pieces[$i]) && ereg(";", $pieces[$i])) {
        // echo $pieces[$i], "<br><br>";
        $result = pg_exec($link, pre_query($pieces[$i])) or pg_die(pg_errormessage(), $pieces[$i], __FILE__, __LINE__);
    }
}
if (eregi("create table|drop table|create database|drop database", $sql_query)) {
    $reload = "true";
}
$sql_query = nl2br(stripslashes($orig_query));
$message = $strSuccess;
include "db_details.php";
Example #2
0
function my_handler($sql_insert)
{
    global $table, $link, $new_name;
    $sql_insert = ereg_replace($table, $new_name, $sql_insert);
    $result = pg_exec($link, pre_query($sql_insert)) or pg_die(pg_errormessage($link), $sql_insert, __FILE__, __LINE__);
    $sql_query = $sql_insert;
}
Example #3
0
function set_privilege($sql_set_privilege)
{
    global $link;
    if (!($res = @pg_exec($link, $sql_set_privilege))) {
        pg_die(pg_errormessage($link), $sql_set_privilege, __FILE__, __LINE__);
    } else {
        echo "<p>{$sql_set_privilege}</p>\n";
    }
}
Example #4
0
<?php

if (!isset($message)) {
    include "header.inc.php";
} else {
    show_message($message);
}
$strRevArgs = ereg_replace(",", " ", $arg_list);
$sql_func_props = "\n\tSELECT \n\t\tpc.oid,\n\t\tproname, \n\t\tlanname as language,\n\t\tpt.typname as return_type,\n\t\tpa.typname as argtype,\n\t\tprosrc as source,\n\t\toidvectortypes(pc.proargtypes) AS arguments\n\tFROM \n\t\tpg_proc pc, pg_language pl, pg_type pt, pg_type pa\n\tWHERE \n\t\tpc.oid = '{$function_oid}'::oid\n\t\tAND pc.prolang = pl.oid\n\t\tAND pc.prorettype = pt.oid\n\tUNION\n\tSELECT \n\t\tpc.oid,\n\t\tproname, \n\t\tlanname AS language,\n\t\t'OPAQUE' AS return_type,\n\t\tpa.typname AS argtype,\n\t\tprosrc AS source,\n\t\toidvectortypes(pc.proargtypes) AS arguments\n\tFROM \n\t\tpg_proc pc, pg_language pl, pg_type pa\n\tWHERE \n\t\tpc.oid = '{$function_oid}'::oid\n\t\tAND pc.prolang = pl.oid\n\t\tAND pc.prorettype = 0\n\t";
// echo $sql_func_props;
$res_props = pg_exec($link, pre_query($sql_func_props)) or pg_die(pg_errormessage(), $sql_func_props, __FILE__, __LINE__);
$row = @pg_fetch_array($res_props, 0);
$strArgList = ereg_replace(" ", ", ", $row[arguments]);
$query = "?server={$server}&db={$db}&rel_type={$rel_type}&function_oid={$row['oid']}";
$func_sql = "{$cfgQuotes}{$row['proname']}{$cfgQuotes}" . "({$strArgList})";
?>
<table border=<?php 
echo $cfgBorder;
?>
>
<TR>
<TH><?php 
echo $strFunc;
?>
</TH>
<TH><?php 
echo $strRetType;
?>
</TH>
<TH><?php 
echo $strLang;
Example #5
0
 function get_table_csv($link, $table, $sep, $handler)
 {
     global $cfgQuotes;
     $result = pg_exec($link, "SELECT * FROM {$cfgQuotes}{$table}{$cfgQuotes}") or pg_die(pg_errormessage(), "", __FILE__, __LINE__);
     $i = 0;
     if (pg_numrows($result)) {
         while ($row = @pg_fetch_row($result, $i++)) {
             unset($schema_insert);
             for ($j = 0; $j < pg_numfields($result); $j++) {
                 if (!isset($row[$j])) {
                     $schema_insert .= "NULL" . $sep;
                 } elseif ($row[$j] != "") {
                     $schema_insert .= "{$row[$j]}" . $sep;
                 } else {
                     $schema_insert .= "" . $sep;
                 }
             }
             $schema_insert = ereg_replace($sep . "\$", "", $schema_insert);
             //       $schema_insert .= ")";
             $handler(trim($schema_insert));
         }
     } else {
         echo "{$strNoData} {$strFound}";
     }
     return true;
 }
Example #6
0
        echo "\n\t\t\t\t<th>{$strReferences}</th>\n\t\t\t\t<th>{$strPrimary}</th>\n\t\t\t";
        $sql_get_fields = "\n\t\t\t\tSELECT \n\t\t\t\t\ta.attnum,\n\t\t\t\t\ta.attname AS field,\n\t\t\t\t\tc.relname AS table_name\n\t\t\t\tFROM \n\t\t\t\t\tpg_class c, pg_attribute a\n\t\t\t\tWHERE \n\t\t\t\t\tc.relname NOT LIKE 'pg%'\n\t\t\t\t\tAND relkind = 'r'\n\t\t\t\t\tAND a.attnum > 0\n\t\t\t\t\tAND a.attrelid = c.oid\n\t\t\t\tORDER BY\n\t\t\t\t\ttable_name, attnum\n\t\t\t\t";
        $fields = @pg_exec($link, pre_query($sql_get_fields)) or pg_die(pg_errormessage(), $sql_get_fields, __FILE__, __LINE__);
        $num_fields_fk = @pg_numrows($fields);
        for ($i_field = 0; $i_field < $num_fields_fk; $i_field++) {
            $field = pg_result($fields, $i_field, "field");
            $table_name = pg_result($fields, $i_field, "table_name");
            $strFKFields .= "<option value='" . addslashes("{$cfgQuotes}{$table_name}{$cfgQuotes}({$cfgQuotes}{$field}{$cfgQuotes})") . "'>{$table_name}({$field})\n";
            // $aryField[] = "$cfgQuotes$sel_tables[$i_tabs]$cfgQuotes.$cfgQuotes$field$cfgQuotes";
        }
    }
    echo "\n\t\t\t<th>{$strIndex}</th>\n\t\t\t<th>{$strUnique}</th>\n\t\t";
}
echo "</tr>";
$sql_get_types = "\n\t\tSELECT typname \n\t\tFROM pg_type pt\n\t\tWHERE typname NOT LIKE '\\\\_%' AND typrelid = 0\n\t\tORDER BY typname\n\t";
$types = pg_exec($link, pre_query($sql_get_types)) or pg_die(pg_errormessage(), $sql_get_types);
for ($i = 0; $i < $num_fields; $i++) {
    if (isset($result)) {
        $row = pg_fetch_array($result, $i);
    }
    $bgcolor = $cfgBgcolorOne;
    $i % 2 ? 0 : ($bgcolor = $cfgBgcolorTwo);
    ?>
    <tr bgcolor="<?php 
    echo $bgcolor;
    ?>
">
    <td valign=\"top\">
      <input type="text" name="field_name[]" size="20" value="<?php 
    if (isset($row) && isset($row[field])) {
        echo $row[field];
Example #7
0
     $len = $row_table_def["lengthvar"] - 4;
 } else {
     if ($row_table_def["length"] > 0) {
         $len = $row_table_def["length"];
     } else {
         // $len = "var";
         unset($len);
     }
 }
 unset($selected_func);
 unset($funcs);
 if (!$edit && $row_table_def["hasdefault"] == "t" && $show_defaults) {
     $sql_get_default = "\n\t\t\t\tSELECT d.adsrc AS \"default_val\"\n\t\t\t\tFROM pg_attrdef d, pg_class c \n\t\t\t\tWHERE \n\t\t\t\t\tc.relname = '{$table}' AND \n\t\t\t\t\tc.oid = d.adrelid AND\n\t\t\t\t\td.adnum = {$row_table_def['attnum']}\n\t\t\t";
     // echo "<p>", $sql_get_default, "<p>";
     if (!($def_res = @pg_exec($link, pre_query($sql_get_default)))) {
         pg_die(pg_errormessage(), $sql_get_default, __FILE__, __LINE__);
         unset($row[$field]);
     } else {
         if (pg_numrows($def_res) > 0) {
             $row[$field] = @pg_result($def_res, 0, "default_val");
             if (eregi("([[:alnum:]_]+)\\(([[:alnum:][:punct:][:cntrl:][:space:]]*)\\)\$", $row[$field], $vals)) {
                 $selected_func = $vals[1];
                 $row[$field] = $vals[2];
                 $row[$field] = ereg_replace("^'", "'{$cfgQuotes}", $row[$field]);
                 $row[$field] = ereg_replace("'::", "{$cfgQuotes}'::", $row[$field]);
                 $row[$field] = ereg_replace("'\$", "{$cfgQuotes}'", $row[$field]);
             }
         } else {
             unset($row[$field]);
         }
     }
Example #8
0
        $typename = pg_result($types, $i_type, "typname");
        if (trim($typename) == trim($func[return_type])) {
            $strSelType = " selected";
        } else {
            unset($strSelType);
        }
        echo "<option value=\"{$typename}\"{$strSelType}>{$typename}";
    }
    ?>
			</select>
		</td>
		<td>
			<select name="language">
			<?php 
    $sql_get_langs = "SELECT lanname FROM pg_language ORDER BY lanname DESC";
    $langs = pg_exec($link, pre_query($sql_get_langs)) or pg_die(pg_errormessage(), $sql_get_langs, __FILE__, __LINE__);
    for ($i_lang = 0; $i_lang < @pg_numrows($langs); $i_lang++) {
        $langname = pg_result($langs, $i_lang, "lanname");
        if ($func[language] == $langname) {
            $strSelLang = " selected";
        } else {
            unset($strSelLang);
        }
        echo "<option value=\"{$langname}\"{$strSelLang}>{$langname}";
    }
    ?>
			</select>
		</td>
	</tr>
	<tr><th colspan=4><?php 
    echo $strSrc;
Example #9
0
<?php

include "header.inc.php";
if (!isset($submit)) {
    // Set max built-in oid
    $max = 0;
    // First, get all available types
    $sql_get_types = "\n\t\t\t\t(\n\t\t\t\tSELECT typname\n\t\t\t\tFROM pg_type pt\n\t\t\t\tWHERE typname NOT LIKE '\\\\_%'\n\t\t\t\t)\n\t\t\t\tEXCEPT\n\t\t\t\t(\n\t\t\t\tSELECT relname\n\t\t\t\tFROM pg_class\n\t\t\t\tWHERE \n\t\t\t\t\trelkind = 'S' OR relname LIKE 'pg%'\n\t\t\t\t) ORDER BY typname\n\t\t\t\t";
    $types = pg_exec($link, pre_query($sql_get_types)) or pg_die(pg_errormessage(), $sql_get_types, __FILE__, __LINE__);
    // And get functions (userland) as well
    $sql_get_func = "\n\t\t\t\tSELECT \n\t\t\t\t\tproname\n\t\t\t\tFROM \n\t\t\t\t\tpg_proc pc, pg_user pu\n\t\t\t\tWHERE\n\t\t\t\t\tpc.proowner = pu.usesysid\n\t\t\t\t\tAND pc.oid > '{$max}'::oid\n            ORDER BY proname\n\t\t\t";
    $funcs = pg_exec($link, pre_query($sql_get_func)) or pg_die(pg_errormessage(), $sql_get_func, __FILE__, __LINE__);
    ?>
	<form method=POST>
	<table border="<?php 
    echo $cfgBorder;
    ?>
">
	<tr>
		<th><?php 
    echo $strProperty;
    ?>
</th>
		<th><?php 
    echo $strValue;
    ?>
</th>
	</tr>
	<tr><td><?php 
    echo $strOperator;
    ?>
Example #10
0
        ?>
	<form method=POST>
		<?php 
        echo $strView, " ", $strName;
        ?>
		<br>
		<input type=text name="view_name" value=""><br>
		<?php 
        echo $strFields, "<br>";
        ?>
		<select name="sel_fields[]" multiple size=10>
	<?php 
        for ($i_tabs = 0; $i_tabs < count($sel_tables); $i_tabs++) {
            $strSelTables .= "<input type=hidden name=\"sel_tables[]\" value=\"{$sel_tables[$i_tabs]}\">\n";
            $sql_get_fields = "\n\t\t\tSELECT \n\t\t\t\ta.attnum,\n\t\t\t\ta.attname AS field\n\t\t\tFROM \n\t\t\t\tpg_class c, pg_attribute a\n\t\t\tWHERE \n\t\t\t\tc.relname = '{$sel_tables[$i_tabs]}'\n\t\t\t\tAND a.attnum > 0\n\t\t\t\tAND a.attrelid = c.oid\n\t\t\tORDER BY\n\t\t\t\tattnum\n\t\t\t";
            $fields = @pg_exec($link, pre_query($sql_get_fields)) or pg_die(pg_errormessage(), $sql_get_fields, __FILE__, __LINE__);
            $num_fields = @pg_numrows($fields);
            for ($i_field = 0; $i_field < $num_fields; $i_field++) {
                $field = pg_result($fields, $i_field, "field");
                echo "<option value='" . addslashes("{$cfgQuotes}{$sel_tables[$i_tabs]}{$cfgQuotes}.{$cfgQuotes}{$field}{$cfgQuotes}") . "'>{$cfgQuotes}{$sel_tables[$i_tabs]}{$cfgQuotes}.{$cfgQuotes}{$field}{$cfgQuotes}\n";
                $aryField[] = "{$cfgQuotes}{$sel_tables[$i_tabs]}{$cfgQuotes}.{$cfgQuotes}{$field}{$cfgQuotes}";
            }
        }
        ?>
		</select>
		
		<br>
		<?php 
        $arFields[] = " ";
        for ($i_prim = 0; $i_prim < count($aryField); $i_prim++) {
            $arFields[] = $aryField[$i_prim];
Example #11
0
<?php

/* $Id: tbl_select.php,v 1.7 2001/02/02 06:03:08 dwilson Exp $ */
include "header.inc.php";
if (!isset($param) || empty($param[0])) {
    if (!empty($view)) {
        $table = $view;
    }
    $sql_get_fields = "SELECT * FROM {$cfgQuotes}{$table}{$cfgQuotes} LIMIT 1";
    if (!($result = pg_exec($link, pre_query($sql_get_fields)))) {
        pg_die(pg_errormessage(), $sql_get_fields, __FILE__, __LINE__);
    } else {
        ?>

		<form method="POST" ACTION="tbl_select.php">
		<input type="hidden" name="server" value="<?php 
        echo $server;
        ?>
" >
		<input type="hidden" name="db" value="<?php 
        echo $db;
        ?>
" >  
		<input type="hidden" name="table" value="<?php 
        echo $table;
        ?>
" >
		<input type="hidden" name="goto" value="<?php 
        echo $goto;
        ?>
">
Example #12
0
    } else {
        $qrUserSave .= " NOCREATEDB";
    }
    if ($usesuper == "true") {
        $qrUserSave .= " CREATEUSER";
    } else {
        $qrUserSave .= " NOCREATEUSER";
    }
    if (!empty($valuntil)) {
        $qrUserSave .= " VALID UNTIL '{$valuntil}'";
    }
    // echo $qrUserSave, "<p>";
    if (@pg_exec($link, pre_query($qrUserSave))) {
        echo "{$strUserUpdated}!<p>";
    } else {
        pg_die(pg_errormessage(), $qrUserSave, __FILE__, __LINE__);
    }
    unset($save_action);
    unset($action);
}
// Display all users
if (empty($action)) {
    $qrUsers = "SELECT * FROM pg_user WHERE usename NOT IN ('root', '{$cfgSuperUser}') ORDER BY usesysid";
    $rsUsers = pg_exec($link, pre_query($qrUsers));
    $iNumUsers = pg_numrows($rsUsers);
    if ($iNumUsers > 0) {
        echo "\n\t\t\t\t<table border=\"{$cfgBorder}\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<th>{$strUserName}</th>\n\t\t\t\t\t\t<th>{$strSysID}</th>\n\t\t\t\t\t\t<th>{$strCreateDB}</th>\n\t\t\t\t\t\t<th>{$strSuperUser}</th>\n\t\t\t\t\t\t<!--th>{$strCatUpd}</th-->\n\t\t\t\t\t\t<th>{$strExpires}</th>\n\t\t\t\t\t\t<th>{$strAction}</th>\n\t\t\t\t\t</tr>\n\t\t\t";
        for ($iUsers = 0; $iUsers < $iNumUsers; $iUsers++) {
            $aryUsers = pg_fetch_array($rsUsers, $iUsers);
            $strBGcolor = $cfgBgcolorOne;
            $iRows++ % 2 ? 0 : ($strBGcolor = $cfgBgcolorTwo);
Example #13
0
<?php

/* $Id: tbl_rename.php,v 1.2 2001/02/02 06:03:08 dwilson Exp $ */
$old_name = $table;
$table = $new_name;
include "header.inc.php";
$sql_query = "ALTER TABLE {$cfgQuotes}{$old_name}{$cfgQuotes} RENAME TO {$cfgQuotes}{$new_name}{$cfgQuotes}";
$result = pg_exec($link, pre_query($sql_query)) or pg_die(pg_errormessage(), $sql_query, __FILE__, __LINE__);
$table = $old_name;
eval("\$message = \"{$strRenameTableOK}\";");
$table = $new_name;
include "tbl_properties.php";
exit;
include "footer.inc.php";
Example #14
0
		<div ID="el200Parent" CLASS="parent">
			<p><p>
			<a class="item" HREF="javascript:void(0)" onClick="expandIt('el200'); return false;"><img NAME="imEx" SRC="images/plus.gif" BORDER="0" ALT="+" width="9" height="9" ID="el200Img"></a>&nbsp;<a class="item"><font color="black" class="heada"><?php 
    echo $strSystemTables;
    ?>
</font></a>
		</div>
		<div ID="el200Child" CLASS="child">
<?php 
    $db = $cfgDefaultDB;
    $conn_str = "user={$cfgServer['stduser']} password={$cfgServer['stdpass']} ";
    if (!$cfgServer[local]) {
        $conn_str .= "host={$cfgServer['host']} ";
    }
    $conn_str .= "port={$cfgServer['port']} dbname={$db}";
    $dbh_tbl = pg_connect($conn_str) or pg_die(pg_errormessage(), $conn_str, __FILE__, __LINE__);
    $sql_get_tbls = "select relname from pg_class where relname ~ 'pg_.*' and relkind = 'r' or relkind = 'v' order by relname";
    $tbl_res = pg_exec($dbh_tbl, pre_query($sql_get_tbls));
    $num_tables = @pg_numrows($tbl_res);
    for ($j = 0; $j < $num_tables; $j++) {
        $table = pg_result($tbl_res, $j, "relname");
        $query_str = "sql_query=" . urlencode("SELECT * FROM {$cfgQuotes}{$table}{$cfgQuotes}") . "&server={$server}&db={$db}&table=" . urlencode($table);
        ?>
&nbsp;&nbsp;<a target="main" href="sql.php?<?php 
        echo $query_str;
        ?>
&goto=tbl_properties.php"><img src="images/browse.gif" border="0" alt="<?php 
        echo "{$strBrowse} {$strTable}: {$table}";
        ?>
"></a>&nbsp;<a class="item" target="main" HREF="tbl_properties.php?server=<?php 
        echo $server;
Example #15
0
                        echo $strDrop;
                        ?>
</td>
					<?php 
                    }
                    ?>
					</tr>
					<?php 
                }
                echo "</table>\n";
            }
            break;
        default:
            // Tables
            $sql_get_tables = "SELECT tablename, tableowner FROM pg_tables WHERE tablename NOT LIKE 'pg%' ORDER BY tablename";
            $tables = @pg_exec($link, $sql_get_tables) or pg_die(pg_errormessage(), $sql_get_tables, __FILE__, __LINE__);
            $num_tables = @pg_numrows($tables);
            if ($num_tables == 0) {
                echo "<br/><b>{$strNo} {$strTables} {$strFound}</b><br/>";
            } else {
                $i = 0;
                echo "\n\t\t\t\t\t<table border={$cfgBorder}>\n\n\t\t\t\t\t\t<tr bgcolor=lightgrey>\n\t\t\t\t\t\t\t<th align=center>{$strTable}</th>\n\t\t\t\t\t\t\t<th align=center>{$strOwner}</th>\n\t\t\t\t";
                if (!$printview) {
                    echo "<th colspan=7>{$strAction}</th>";
                }
                echo "\n\t\t\t\t\t\t\t<th>{$strRecords}</th>\n\t\t\t\t\t\t\t<th>Comments</th>\n\t\t\t\t\t\t</tr>\n\t\t\t\t";
                while ($i < $num_tables) {
                    $bgcolor = $cfgBgcolorOne;
                    $i % 2 ? 0 : ($bgcolor = $cfgBgcolorTwo);
                    $table = pg_result($tables, $i, 'tablename');
                    $owner = pg_result($tables, $i, 'tableowner');
Example #16
0
 if ($rep_action == "create") {
     $qrInsertRep = "INSERT INTO ppa_reports (report_name, db_name, created_by, descr, report_sql) VALUES ('{$rep_name}', '{$rep_db}', '{$PHP_PGADMIN_USER}', '{$rep_descr}', '{$rep_source}')";
     $rsInsertRep = @pg_exec($link_rep, $qrInsertRep) or pg_die(pg_errormessage(), $qrInsertRep, __FILE__, __LINE__);
     $message = "{$strReport} '{$rep_name}' {$strHasBeenCreated}";
     show_message($message);
 } elseif ($rep_action == "edit") {
     $qrUpdateRep = "UPDATE ppa_reports SET report_name ='{$rep_name}', db_name = '{$rep_db}', descr = '{$rep_descr}', report_sql = '{$rep_source}' WHERE report_id = {$rep_id}";
     $rsUpdateRep = @pg_exec($link_rep, $qrUpdateRep) or pg_die(pg_errormessage(), $qrUpdateRep, __FILE__, __LINE__);
     $message = "{$strReport} '{$rep_name}' {$strHasBeenAltered}";
     show_message($message);
 }
 $qrReports = "SELECT * FROM ppa_reports ORDER BY db_name, report_name";
 if (!empty($dbname)) {
     $qrReports .= " WHERE db_name = '{$dbname}'";
 }
 $rsReports = @pg_exec($link_rep, $qrReports) or pg_die(pg_errormessage(), $qrReports, __FILE__, __LINE__);
 $rnReports = @pg_numrows($rsReports);
 if ($rnReports > 0) {
     echo "\n\t\t\t<table border=\"{$cfgBorder}\">\n\t\t\t\t<tr bgcolor=\"lightgrey\">\n\t\t\t\t\t<th>{$strReportName}</th>\n\t\t\t\t\t<th>{$strDatabase}</th>\n\t\t\t\t\t<th>{$strDate}</th>\n\t\t\t\t\t<!--th>{$strDescription}</th-->\n\t\t\t\t\t<th colspan=\"4\">{$strAction}</th>\n\t\t\t\t</tr>\n\t\t";
     $query = "?db={$db}&server={$server}&goto=" . urlencode("reports.php");
     for ($intReports = 0; $intReports < $rnReports; $intReports++) {
         $bgcolor = $cfgBgcolorOne;
         $intReports % 2 ? 0 : ($bgcolor = $cfgBgcolorTwo);
         $rep_row = @pg_fetch_array($rsReports, $intReports);
         $rep_query = "?server={$server}&db={$rep_row['db_name']}&goto=" . urlencode("reports.php");
         echo "\n\t\t\t\t<tr bgcolor=\"{$bgcolor}\">\n\t\t\t\t\t<td class=\"data\"><b>{$rep_row['report_name']}</b></td>\n\t\t\t\t\t<td class=\"data\">{$rep_row['db_name']}</td>\n\t\t\t\t\t<td class=\"data\">{$rep_row['date_created']}</td>\n\t\t\t\t\t<!--td class=\"data\">{$rep_row['descr']}</td-->\n\t\t\t\t\t<td class=\"data\">\n\t\t\t\t\t\t<a href=\"rep_properties.php{$query}&rep_id={$rep_row['report_id']}\">{$strProperties}</a>\n\t\t\t\t\t</td>\n\t\t\t\t\t<td class=\"data\">\n\t\t\t\t\t\t<a href=\"rep_create.php{$query}&rep_id={$rep_row['report_id']}\">{$strChange}</a>\n\t\t\t\t\t</td>\n\t\t\t\t\t<td class=\"data\">\n\t\t\t\t\t\t<a href=\"sql.php{$query}&sql_query=" . urlencode("DELETE FROM ppa_reports WHERE report_id = {$rep_row['report_id']}") . "&zero_rows=" . urlencode("{$strReport} {$rep_row['report_name']} {$strHasBeenDropped}") . "\">{$strDrop}</a>\n\t\t\t\t\t</td>\n\t\t\t\t\t<td class=\"data\">\n\t\t\t\t\t\t<a href=\"sql.php{$rep_query}&sql_query=" . urlencode($rep_row[report_sql]) . "\">{$strRun}</a>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t";
     }
     echo "</table>";
 } else {
     echo "{$strNo} {$strReports} {$strFound}";
 }
Example #17
0
</a></td>
		<?php 
        }
        // end print view
        ?>
		</tr>
		<?php 
    }
    ?>
   </table>
   <?php 
}
$sql_pri_keys = "\n\t\tSELECT \n\t\t\tic.relname AS index_name, \n\t\t\tbc.relname AS tab_name, \n\t\t\tta.attname AS column_name,\n\t\t\ti.indisunique AS unique_key,\n\t\t\ti.indisprimary AS primary_key\n\t\tFROM \n\t\t\tpg_class bc,\n\t\t\tpg_class ic,\n\t\t\tpg_index i,\n\t\t\tpg_attribute ta,\n\t\t\tpg_attribute ia\n\t\tWHERE \n\t\t\tbc.oid = i.indrelid\n\t\t\tAND ic.oid = i.indexrelid\n\t\t\tAND ia.attrelid = i.indexrelid\n\t\t\tAND ta.attrelid = bc.oid\n\t\t\tAND bc.relname = '{$table}'\n\t\t\tAND ta.attrelid = i.indrelid\n\t\t\tAND ta.attnum = i.indkey[ia.attnum-1]\n\t\tORDER BY \n\t\t\tindex_name, tab_name, column_name\n\t";
// echo $sql_pri_keys;
if (!($pri_result = pg_exec($link, pre_query($sql_pri_keys)))) {
    pg_die(pg_errormessage(), $sql_pri_keys, __FILE__, __LINE__);
} else {
    $num_keys = @pg_numrows($pri_result);
    //	echo "Num keys: ", $num_keys;
    if ($num_keys > 0) {
        ?>
		<br>
		<table border=<?php 
        echo $cfgBorder;
        ?>
>
		<tr>
		<th><?php 
        echo $strKeyname;
        ?>
</th>
Example #18
0
<?php

if (!isset($message)) {
    include "header.inc.php";
} else {
    show_message($message);
}
$sql_operator_props = "\n\tSELECT\n      po.oid,\n      po.oprname,\n      po.oprcanhash,\n      po.oprcode,\n      po.oprrest,\n      po.oprjoin,\n      po.oprcom,\n      po.oprnegate,\n      po.oprlsortop as oprlsortop_orig,\n      po.oprrsortop as oprrsortop_orig,\n\t\t(select typname from pg_type pt where pt.oid=po.oprleft) as leftarg,\n\t\t(select typname from pg_type pt where pt.oid=po.oprright) as rightarg,\n\t\t(select oprname from pg_operator po1 where po1.oid=po.oprcom) as commutator,\n\t\t(select oprname from pg_operator po1 where po1.oid=po.oprnegate) as negator,\n      (select oprname from pg_operator po1 where po1.oid=po.oprlsortop) as oprlsortop,\n      (select oprname from pg_operator po1 where po1.oid=po.oprrsortop) as oprrsortop,\n\t\t(select typname from pg_type pt where pt.oid=po.oprresult) as result\n\tFROM\n\t\tpg_operator po\n\tWHERE\n\t\tpo.oid = '{$operator_oid}'\n";
if (!($res_props = pg_exec($link, pre_query($sql_operator_props)))) {
    pg_die(pg_errormessage(), $sql_operator_props, __FILE__, __LINE__);
} else {
    $row = @pg_fetch_array($res_props, 0);
    // Construct operator link
    $query = "?db={$db}&server={$server}&rel_type=operator&operator_oid=%s";
    $op = "<a href=\"oper_properties.php{$query}\">%s</a>";
    $pr_query = "?db={$db}&rel_type=operator&server={$server}";
    ?>
	<table border=<?php 
    echo $cfgBorder;
    ?>
>
	<TR>
	<TH><?php 
    echo $strProperty;
    ?>
</TH>
	<TH><?php 
    echo $strValue;
    ?>
</TH>
	</TR>
Example #19
0
            $tmp[0] = '(';
            $qrUsers .= " WHERE groname NOT IN {$tmp})";
        }
        $qrUsers .= " ORDER BY thename";
    } else {
        $qrUsers = "SELECT 'public'::text AS thename UNION SELECT '{$cfgQuotes}' || usename || '{$cfgQuotes}' AS thename FROM pg_user WHERE usename NOT IN ('root', '{$cfgSuperUser}'";
        @reset($privileges);
        while (list($key) = @each($privileges)) {
            if (!ereg("group ", $key)) {
                $qrUsers .= ", '{$key}'";
            }
        }
        $qrUsers .= ") ORDER BY thename";
    }
    if (!empty($qrUsers)) {
        $res = @pg_exec($link, $qrUsers) or pg_die(pg_errormessage($link), $qrUsers, __FILE__, __LINE__);
        $name = '<select name="user">';
        $num_rows = pg_numrows($res);
        for ($i = 0; $i < $num_rows; $i++) {
            $row = pg_fetch_array($res, $i);
            $name .= '<option value="' . rawurlencode($row['thename']) . '">' . $row['thename'] . "</option>";
        }
        $name .= "</select>\n";
    }
    unset($action);
    ?>

	<form method="post" action="db_privilege.php">
		<p><?php 
    echo $Action;
    ?>
Example #20
0
 echo "<table border={$cfgBorder}>\n\t\t\t\t<form method=\"post\">\n\t\t";
 $qrGroups = "SELECT groname, grolist, grosysid FROM pg_group WHERE groname = '{$groname}' ORDER BY groname";
 $rsGroups = @pg_exec($link, pre_query($qrGroups));
 $aryGroups = pg_fetch_array($rsGroups, 0);
 $members = $aryGroups[grolist];
 $members = ereg_replace("\\{|\\}", "", $members);
 echo "\n\t\t\t<tr><th colspan=\"2\">{$strGroup}: {$aryGroups['groname']}</th><th>{$strGroupModify}</th></tr>\n\t\t\t<tr bgcolor={$cfgMember}><td colspan=\"3\"><b>{$strMember}</b></td></tr>\n\t\t";
 if (!empty($members)) {
     $strCheckMem = "usesysid NOT IN ({$members}) AND ";
     $qMember = "SELECT usename, 1 as dummy, usesysid \n\t\t\t            FROM pg_user \n\t\t\t\t\t\tWHERE usesysid in ({$members}) AND \n\t\t\t\t\t\t      usename NOT IN ('root', '{$cfgSuperUser}')\n\t\t\t";
     $rsMember = pg_exec($link, pre_query($qMember)) or pg_die(pg_errormessage($link), $qMember, __FILE__, __LINE__);
     $nMemRows = pg_numrows($rsMember);
 }
 $qNon = "SELECT usename, 0 as dummy, usesysid \n\t\t\t\t\tFROM pg_user \n\t\t\t\t\tWHERE {$strCheckMem} \n\t\t\t\t\t\t  usename NOT IN ('root', '{$cfgSuperUser}')\n   \t\t\t\t    ORDER BY dummy, usename\n\t\t";
 // echo $qNon, "<br>";
 $rsNon = pg_exec($link, pre_query($qNon)) or pg_die(pg_errormessage($link), $qNon, __FILE__, __LINE__);
 $nNonRows = pg_numrows($rsNon);
 for ($iMem = 0; $iMem < $nMemRows; $iMem++) {
     $bgcolor = $cfgBgcolorOne;
     $iMem % 2 ? 0 : ($bgcolor = $cfgBgcolorTwo);
     $aryMem = pg_fetch_array($rsMember, $iMem);
     echo "\n\t\t\t\t<tr bgcolor={$bgcolor}>\n\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t<td>{$aryMem['usename']}</td>\n\t\t\t\t\t<td>\n\t\t\t\t\t\t<input name=\"mem[{$aryMem['usesysid']}]\" value=\"{$aryMem['usename']}\" type=checkbox>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t";
 }
 echo "<tr bgcolor=\"{$cfgNonMember}\"><td colspan=3><b>{$strNonMember}</b></td></tr>";
 for ($iNon = 0; $iNon < $nNonRows; $iNon++) {
     $bgcolor = $cfgBgcolorOne;
     $iNon % 2 ? 0 : ($bgcolor = $cfgBgcolorTwo);
     $aryNon = pg_fetch_array($rsNon, $iNon);
     echo "\n\t\t\t\t<tr bgcolor={$bgcolor}>\n\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t<td>{$aryNon['usename']}</td>\n\t\t\t\t\t<td>\n\t\t\t\t\t\t<input name=\"non[{$aryNon['usesysid']}]\" value=\"{$aryNon['usename']}\" type=checkbox>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t";
 }
 echo "\n\t\t\t\t<tr><td colspan=3>&nbsp;</td></tr>\n\t\t\t\t<tr>\n\t\t\t\t\t<td colspan=3>\n\t\t\t\t\t\t<input type=\"submit\" value=\"{$strGroupModify}\">\n\t\t\t\t\t\t<input type=\"button\" value=\"{$strCancel}\" onClick=\"history.back()\">\n\t\t\t\t\t\t<input type=\"hidden\" name=\"todo\" value=\"modify\">\n\t\t\t\t\t\t<input type=\"hidden\" name=\"save_action\" value=\"1\">\n\t\t\t\t\t\t<input type=\"hidden\" name=\"groname\" value=\"{$groname}\">\n\t\t\t\t\t\t<input type=\"hidden\" name=\"server\" value=\"{$server}\">\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t\t</form>\n\t\t\t</table>\n\t\t";
Example #21
0
    $client = getenv("HTTP_USER_AGENT");
    if (ereg('[^(]*\\((.*)\\)[^)]*', $client, $regs)) {
        $os = $regs[1];
        // this looks better under WinX
        if (eregi("Win", $os)) {
            $crlf = "\r\n";
        }
    }
    $drop_field = $field;
    $create_table = get_table_def($link, $table, $crlf);
    unset($sql_query);
    $exec_query = "CREATE TABLE {$cfgQuotes}{$new_table}{$cfgQuotes} AS SELECT {$strFieldList} FROM {$cfgQuotes}{$table}{$cfgQuotes}";
    pg_exec($link, pre_query($exec_query)) or pg_die(pg_errormessage(), $exec_query, __FILE__, __LINE__);
    $sql_query .= $exec_query . ";\n";
    $exec_query = "DROP TABLE {$cfgQuotes}{$table}{$cfgQuotes}";
    pg_exec($link, pre_query($exec_query)) or pg_die(pg_errormessage(), $exec_query, __FILE__, __LINE__);
    $sql_query .= $exec_query . ";\n";
    $exec_query = $create_table;
    pg_exec($link, pre_query($exec_query)) or pg_die(pg_errormessage(), $exec_query, __FILE__, __LINE__);
    $sql_query .= $exec_query;
    $exec_query = "INSERT INTO {$cfgQuotes}{$table}{$cfgQuotes} SELECT * FROM {$cfgQuotes}{$new_table}{$cfgQuotes}";
    pg_exec($link, pre_query($exec_query)) or pg_die(pg_errormessage(), $exec_query, __FILE__, __LINE__);
    $sql_query .= $exec_query . ";\n";
    $exec_query = "DROP TABLE {$cfgQuotes}{$new_table}{$cfgQuotes}";
    pg_exec($link, pre_query($exec_query)) or pg_die(pg_errormessage(), $exec_query, __FILE__, __LINE__);
    $sql_query .= $exec_query . ";\n";
    $message = "{$strTable} {$table} {$strHasBeenAltered}";
    include "tbl_properties.php";
    exit;
}
include "footer.inc.php";
Example #22
0
/* $Id: rep_create.php,v 1.2 2001/02/02 06:03:08 dwilson Exp $ */
//		File: 		rep_create.php
//		Purpose: 	Create Report
//		Author:		Dan Wilson
//		Date:		05 Dec 2000
include "lib.inc.php";
include "header.inc.php";
echo "<h1>{$strReports}</h1>";
$qrGetDB = "SELECT datname FROM pg_database WHERE datname NOT IN ('phppgadmin', 'template1') ORDER BY datname";
$rsGetDB = @pg_exec($link, $qrGetDB) or pg_die(pg_errormessage(), $qrGetDB, __FILE__, __LINE__);
$nmGetDB = pg_numrows($rsGetDB);
for ($intDB = 0; $intDB < $nmGetDB; $intDB++) {
    $arDB[] = pg_result($rsGetDB, $intDB, "datname");
}
if (isset($rep_id)) {
    $qrGetRep = "SELECT * FROM ppa_reports WHERE report_id = {$rep_id}";
    $rsGetRep = @pg_exec($link, $qrGetRep) or pg_die(pg_errormessage(), $qrGetRep, __FILE__, __LINE__);
    if (pg_numrows($rsGetRep) > 0) {
        $rep_row = pg_fetch_array($rsGetRep, 0);
    }
    $strRepAction = "edit";
    $strSubmitTxt = $strUpdate;
} else {
    $rep_row[db_name] = $db_name;
    $rep_row[report_sql] = stripslashes($rep_sql);
    $strRepAction = "create";
    $strSubmitTxt = $strCreate;
}
$strSelGetDB = select_box(array("name" => "rep_db", "values" => $arDB, "selected" => $rep_row[db_name]));
echo "\n\t<form action=\"reports.php\" method=\"POST\">\n\t<table border=\"{$cfgBorder}\">\n\t<tr>\n\t\t<td>{$strReportName}:</td>\n\t\t<td>\n\t\t\t<input type=\"text\" name=\"rep_name\" value=\"{$rep_row['report_name']}\" maxlength=\"50\" size=\"50\">\n\t\t</td>\n\t</tr>\n\t<tr>\n\t\t<td>{$strDatabase}:</td>\n\t\t<td>{$strSelGetDB}</td>\n\t</tr>\n\t<tr>\n\t\t<td valign=\"top\">{$strDescription}:</td>\n\t\t<td>\n\t\t\t<textarea name=\"rep_descr\" wrap=\"virtual\" style=\"width:{$cfgMaxInputsize};\" rows=\"3\">{$rep_row['descr']}</textarea>\n\t\t</td>\n\t</tr>\n\t<tr>\n\t\t<td valign=\"top\">{$strDefinition}:</td>\n\t\t<td>\n\t\t\t<textarea name=\"rep_source\" wrap=\"virtual\" style=\"width:{$cfgMaxInputsize};\" rows=\"5\">{$rep_row['report_sql']}</textarea>\n\t\t</td>\n\t</tr>\n\t<tr>\n\t\t<td align=\"center\" colspan=\"2\">\n\t\t\t<input type=\"submit\" name=\"submit_report\" value=\"{$strSubmitTxt}\">\n\t\t\t<input type=\"reset\" value=\"{$strReset}\">\n\t\t\t<input type=\"button\" value=\"{$strCancel}\" onClick=\"history.back();\">\n\t\t</td>\n\t</tr>\n\t<input type=\"hidden\" name=\"rep_action\" value=\"{$strRepAction}\">\n\t<input type=\"hidden\" name=\"rep_id\" value=\"{$rep_id}\">\n\t</form>\n";
include "footer.inc.php";
Example #23
0
     $pri_query = "\n\t\t\tSELECT \n\t\t\t\ta.attname AS column_name,\n\t\t\t\ti.indisunique AS unique_key,\n\t\t\t\ti.indisprimary AS primary_key\n\t\t\tFROM \n\t\t\t\tpg_class bc,\n\t\t\t\tpg_class ic,\n\t\t\t\tpg_index i,\n\t\t\t\tpg_attribute a\n\t\t\tWHERE \n\t\t\t\ti.indrelid = bc.oid\n\t\t\t\tand i.indexrelid = ic.oid\n\t\t\t\tand \n\t\t\t\t(\n\t\t\t\t\ti.indkey[0] = a.attnum \n\t\t\t\t\tor\n\t\t\t\t\ti.indkey[1] = a.attnum\n\t\t\t\t\tor\n\t\t\t\t\ti.indkey[2] = a.attnum\n\t\t\t\t\tor\n\t\t\t\t\ti.indkey[3] = a.attnum\n\t\t\t\t\tor\n\t\t\t\t\ti.indkey[4] = a.attnum\n\t\t\t\t\tor\n\t\t\t\t\ti.indkey[5] = a.attnum\n\t\t\t\t\tor\n\t\t\t\t\ti.indkey[6] = a.attnum\n\t\t\t\t\tor\n\t\t\t\t\ti.indkey[7] = a.attnum\n\t\t\t\t)\n\t\t\t\tand a.attrelid = bc.oid\n\t\t\t\tand i.indproc = '0'::oid\n\t\t\t\tand bc.relname = '{$table}'\n\t\t\t\tand (i.indisprimary = 't' or i.indisunique = 't')\n\t\t";
     $pri_result = @pg_exec($link, pre_query($pri_query)) or pg_die(pg_errormessage(), $pri_query, __FILE__, __LINE__);
     $pri_num = @pg_numrows($pri_result);
     for ($i_pri_rows = 0; $i_pri_rows < $pri_num; $i_pri_rows++) {
         $my_pri_key = pg_result($pri_result, $i_pri_rows, "column_name");
         // if (!eregi($my_pri_key, $sql_query)) {
         // Need to figure out a way to determine whether the primary key for the table has been selected
         // If not, then we need to pull it in.  This is for use with the actions.
         // }
         $pri_keys[] = $my_pri_key;
     }
     $sql_query = isset($sql_query) ? stripslashes($sql_query) : '';
     $sql_order = isset($sql_order) ? stripslashes($sql_order) : '';
     if (!($result = @pg_exec($link, pre_query($sql_query . $sql_order)))) {
         include "header.inc.php";
         pg_die(pg_errormessage($link), $sql_query . $sql_order, __FILE__, __LINE__);
     }
     $num_rows = @pg_numrows($result);
 }
 if ($num_rows < 1 || $rel_type == "sequence" && eregi($sql_query, "setval")) {
     if (eregi("delete|insert|update", $sql_query)) {
         $affected_rows = @pg_cmdtuples($result);
     } else {
         unset($affected_rows);
     }
     if (file_exists("./{$goto}")) {
         include "header.inc.php";
         if (isset($zero_rows) && !empty($zero_rows)) {
             $message = $zero_rows;
         } else {
             $message = $strEmptyResultSet;
Example #24
0
<?php

/* $Id: trig_properties.php,v 1.3 2001/02/02 06:03:08 dwilson Exp $ */
if (!isset($message)) {
    include "header.inc.php";
} else {
    show_message($message);
}
$sql_trigger_props = "\n\tSELECT \n\t\tpt.oid,\n\t\tpt.*, \n\t\tpp.proname, \n\t\tpc.relname, \n\t\tpy.typname\n\tFROM \n\t\tpg_trigger pt, pg_proc pp, pg_class pc, pg_type py\n\tWHERE \n\t\tpp.oid = pt.tgfoid\n\t\tAND pt.tgtype = py.oid\n\t\tAND pt.tgrelid = pc.oid\n\t\tAND tgname = '{$trigger}'\n";
if (!($res_props = pg_exec($link, pre_query($sql_trigger_props)))) {
    pg_die(pg_errormessage(), $sql_trigger_props, __FILE__, __LINE__);
} else {
    $row = @pg_fetch_array($res_props, 0);
    // Construct function definition
    $query = "?db={$db}&server={$server}&rel_type=function&function_oid={$row['tgfoid']}";
    $fn = "<a href=\"func_properties.php{$query}\">" . $row[proname] . "</a>";
    // Strip off trailing delimiter
    $tgargs = trim(substr($row[tgargs], 0, strlen($row[tgargs]) - 4));
    $params = explode('\\000', $tgargs);
    for ($i = 0; $i < sizeof($params); $i++) {
        $params[$i] = str_replace("'", "\\'", $params[$i]);
    }
    $defn = implode("', '", $params);
    $tg_query = "?db={$db}&rel_type=trigger&server={$server}";
    ?>
	<table border=<?php 
    echo $cfgBorder;
    ?>
>
	<TR>
	<TH><?php 
Example #25
0
<?php

/* $Id: db_create.php,v 1.2 2001/02/02 06:03:08 dwilson Exp $ */
include "header.inc.php";
if (empty($goto)) {
    $goto = "db_details.php";
}
$qrCreateDB = "CREATE DATABASE {$cfgQuotes}{$newdb}{$cfgQuotes}";
if (!@pg_exec($qrCreateDB)) {
    pg_die(pg_errormessage(), $qrCreateDB, __FILE__, __LINE__);
} else {
    $message = "{$strDatabase} {$newdb} {$strHasBeenCreated}";
    $db = $newdb;
    include $goto;
}
Example #26
0
        if (empty($funcs[$key])) {
            $valuelist .= "{$val}, ";
        } else {
            // $val = str_replace("'", "\"", $val);
            $valuelist .= "{$funcs[$key]}(" . stripslashes($val) . "), ";
        }
    }
    $fieldlist = ereg_replace(", \$", "", $fieldlist);
    $valuelist = ereg_replace(", \$", "", $valuelist);
    $query = "INSERT INTO {$cfgQuotes}{$table}{$cfgQuotes} ({$fieldlist}) VALUES ({$valuelist})";
    // echo $query, "<p>";
}
$sql_query = $query;
if (!($result = @pg_exec($link, pre_query($query)))) {
    include "header.inc.php";
    pg_die(pg_errormessage(), $query, __FILE__, __LINE__);
} else {
    if (eregi("delete|insert|update", $sql_query)) {
        $affected_rows = @pg_cmdtuples($result);
    } else {
        unset($affected_rows);
    }
    if (file_exists("./{$goto}")) {
        include "header.inc.php";
        $message = $strModifications;
        include preg_replace('/\\.\\.*/', '.', $goto);
    } else {
        Header("Location: {$goto}");
    }
    exit;
}