/** * This file is a part of MyWebSQL package * * @file: modules/query.php * @author Samnan ur Rehman * @copyright (c) 2008-2012 Samnan ur Rehman * @web http://mywebsql.net * @license http://mywebsql.net/license */ function processRequest(&$db) { // first time query will be from request, then we will get it from session (applying limit scenario) $table_select = v($_REQUEST["id"]) == 'table' ? true : false; if ($table_select) { $query = selectFromTable($db); } else { $query = simpleQuery($db); } if (!$query) { createErrorGrid($db, $query); return; } loadDbVars($db); if ($db->query($query)) { if (!$db->hasResult()) { $info = getCommandInfo($query); if ($info['dbAltered']) { Session::set('db', 'altered', true); } else { if ($info['setvar'] == TRUE) { setDbVar($info['variable'], $info['value']); } } createInfoGrid($db); } else { createResultGrid($db); } } else { createErrorGrid($db, $query); } }
/** * This file is a part of MyWebSQL package * * @file: modules/tableinsert.php * @author Samnan ur Rehman * @copyright (c) 2008-2014 Samnan ur Rehman * @web http://mywebsql.net * @license http://mywebsql.net/license */ function processRequest(&$db) { $tbl = $_REQUEST["name"]; $str = $db->getInsertStatement($tbl); if ($str === false) { createErrorGrid($db, $db->getLastQuery()); } else { print "<div id='results'>" . htmlspecialchars($str) . "</div>"; print "<script type=\"text/javascript\" language='javascript'> parent.transferQuery(); </script>\n"; } }
/** * This file is a part of MyWebSQL package * * @file: modules/truncate.php * @author Samnan ur Rehman * @copyright (c) 2008-2012 Samnan ur Rehman * @web http://mywebsql.net * @license http://mywebsql.net/license */ function processRequest(&$db) { $type = v($_REQUEST["id"]); $name = v($_REQUEST["name"]); if (!$name) { createErrorGrid($db, ''); return; } if ($db->truncateTable($name)) { createInfoGrid($db, $db->getLastQuery()); } else { createErrorGrid($db, $db->getLastQuery()); } }
/** * This file is a part of MyWebSQL package * * @file: modules/drop.php * @author Samnan ur Rehman * @copyright (c) 2008-2012 Samnan ur Rehman * @web http://mywebsql.net * @license http://mywebsql.net/license */ function processRequest(&$db) { $type = v($_REQUEST["id"]); $name = v($_REQUEST["name"]); if (!$name) { createErrorGrid($db, ''); return; } $success = $db->dropObject($name, $type); if ($success) { Session::set('db', 'altered', true); createInfoGrid($db, $db->getLastQuery()); } else { createErrorGrid($db, $db->getLastQuery()); } }
/** * This file is a part of MyWebSQL package * * @file: modules/copy.php * @author Samnan ur Rehman * @copyright (c) 2008-2012 Samnan ur Rehman * @web http://mywebsql.net * @license http://mywebsql.net/license */ function processRequest(&$db) { $type = v($_REQUEST["id"]); $name = v($_REQUEST["name"]); $new_name = v($_REQUEST["query"]); if (!$name || !$new_name) { createErrorGrid($db, ''); return; } $success = $db->copyObject($name, $type, $new_name); // @@TODO: this can be improved, although it is only information $numQueries = $type == 'table' ? 2 : 1; if ($success) { Session::set('db', 'altered', true); createInfoGrid($db, '', $numQueries); } else { createErrorGrid($db, $db->getLastQuery()); } }
/** * This file is a part of MyWebSQL package * * @file: modules/query.php * @author Samnan ur Rehman * @copyright (c) 2008-2014 Samnan ur Rehman * @web http://mywebsql.net * @license http://mywebsql.net/license */ function processRequest(&$db) { // first time query will be from request, then we will get it from session (applying limit scenario) $table_select = v($_REQUEST["id"]) == 'table' ? true : false; if ($table_select) { $query = selectFromTable($db); } else { $query = simpleQuery($db); } if (!$query) { createErrorGrid($db, $query); return; } loadDbVars($db); if ($db->query($query)) { if (!$db->hasResult()) { $info = getCommandInfo($query); if ($info['dbAltered']) { Session::set('db', 'altered', true); } else { if ($info['setvar'] == TRUE && is_scalar($info['variable']) && is_scalar($info['value'])) { setDbVar($info['variable'], $info['value']); } } createInfoGrid($db); } else { // if it is a data result set, show it as result grid, otherwise in simple grid layout $query_type = getQueryType($query); if ($query_type['can_limit']) { createResultGrid($db); } else { createSimpleGrid($db, __('Query') . ': ' . $query); } } } else { createErrorGrid($db, $query); } }
/** * This file is a part of MyWebSQL package * * @file: modules/dbcreate.php * @author Samnan ur Rehman * @copyright (c) 2008-2012 Samnan ur Rehman * @web http://mywebsql.net * @license http://mywebsql.net/license */ function processRequest(&$db) { Session::del('select', 'result'); Session::del('select', 'pkey'); Session::del('select', 'ukey'); Session::del('select', 'mkey'); Session::del('select', 'unique_table'); Session::set('select', 'result', array()); $dbName = $_REQUEST["name"]; $dbSelect = $_REQUEST["query"]; $sql = ''; if (!$db->createDatabase($dbName)) { createErrorGrid($db); } else { $redirect = '0'; if ($dbSelect) { Session::set('db', 'changed', true); Session::set('db', 'name', $dbName); $redirect = '1'; } $replace = array('DB_NAME' => htmlspecialchars($dbName), 'SQL' => preg_replace("/[\n\r]/", "<br/>", htmlspecialchars($sql)), 'TIME' => $db->getQueryTime(), 'REDIRECT' => $redirect); echo view('dbcreate', $replace); } }
/** * This file is a part of MyWebSQL package * * @file: modules/queryall.php * @author Samnan ur Rehman * @copyright (c) 2008-2012 Samnan ur Rehman * @web http://mywebsql.net * @license http://mywebsql.net/license */ function processRequest(&$db) { $query = v($_REQUEST["query"]); if (!$query) { createErrorGrid($db, $query); return; } //Session::set('select', 'query', $query); $temp = tmpfile(); fwrite($temp, $query); fseek($temp, 0); include BASE_PATH . "/lib/sqlparser.php"; $parser = new sqlParser($db); $parser->collectStats(); if (!$parser->parseFile($temp)) { createErrorGrid($db, $parser->getLastQuery(), $parser->getExecutedQueries(), $parser->getRowsAffected()); } else { $stats = $parser->getStats(); if ($stats->dbAltered) { Session::set('db', 'altered', true); } createInfoGrid($db, $query, $parser->getExecutedQueries(), $parser->getRowsAffected(), false, $parser->getExecutedTime()); } }
function execute_request(&$db) { // do not append or prepend anything to output if we have to download $output = v($_REQUEST["type"]) == 'download' ? false : true; if ($output) { startForm($db); } if (isset($_REQUEST["type"])) { $module_requested = $_REQUEST["type"]; $_REQUEST["query"] = trim(v($_REQUEST["query"], ""), " \t\r\n;"); $module = BASE_PATH . "/modules/" . $module_requested . ".php"; if (ctype_alpha($module_requested) && file_exists($module)) { require BASE_PATH . '/config/modules.php'; // check for module access type and allow/disallow as needed if (MODULE_ACCESS_MODE == 'deny' && in_array($module_requested, $DENY_MODULES)) { createErrorPage(); } else { if (MODULE_ACCESS_MODE == 'allow' && !in_array($module_requested, $ALLOW_MODULES)) { createErrorPage(); } else { include $module; function_exists('processRequest') ? processRequest($db) : createErrorGrid($db, ""); } } } else { createErrorPage(); } // unidentified type requested } if ($output) { print "</form>\n"; print "</body></html>"; } }