public static function query($request, $post) { $atiaa = \ntentan\atiaa\Driver::getConnection(array('driver' => $post['databasetype'], 'dbname' => $post['databasename'], 'password' => $post['password'], 'user' => $post['username'], 'host' => $post['host'])); $query = self::$post['databasetype']($request, $post); $result = $atiaa->query($query['query']); $display = $atiaa->query($query['display_query']); return array('result' => $result, 'display' => $display); }
protected function getConnection() { $atiaa = \ntentan\atiaa\Driver::getConnection(Config::get('db')); return $this->createDefaultDBConnection($atiaa->getPDO(), Config::get('db')['dbname']); }
<?php require "vendor/autoload.php"; require "ImportTable.php"; $username = $_POST['username']; $database = $_POST['databasename']; $password = $_POST['password']; $host = $_POST['host']; $tablename = $_POST['tablename']; $temp = $_POST['databasetype']; $portnumber = $_POST['portnumber']; $virtualhost = $_POST['virtualhost']; $localhost = $_POST['localhost']; //A library I borrowed from a friend for connection $atiaa = \ntentan\atiaa\Driver::getConnection(array('driver' => $temp, 'user' => $username, 'dbname' => $database, 'host' => $host, 'password' => $password)); $connection = ssh2_connect('10.76.254.127', 22); if (ssh2_auth_password($connection, 'cloudera', 'cloudera')) { $stream = ssh2_exec($connection, "hive -e 'describe {$tablename}'"); stream_set_blocking($stream, true); $output = ssh2_fetch_stream($stream, SSH2_STREAM_STDIO); $trim = explode("WARN", stream_get_contents($output)); $str = explode("\n", $trim[0]); foreach ($str as $value) { if (!$value) { continue; } $fields = explode("\t", $value); $fields[1] = trim($fields[1]) == 'string' ? 'character varying' : $fields[1]; $fields[1] = trim($fields[1]) == 'double' ? 'numeric' : $fields[1]; $fields[1] = trim($fields[1]) == 'int' ? 'integer' : $fields[1]; $columnData[] = trim($fields[0]) . " " . trim($fields[1]);
<?php require "vendor/autoload.php"; require "ExportDatabase.php"; require "ExportTable.php"; require 'database.php'; if ($_POST['graph']) { $reponse = Database::query($_REQUEST, $_POST); $job = new ExportTable(); $atiaa = \ntentan\atiaa\Driver::getConnection(array('driver' => 'postgresql', 'dbname' => 'dummy', 'password' => 'gem', 'user' => 'postgres', 'host' => 'localhost')); $atiaa->query("DROP table dummy_table"); $atiaa->query("CREATE table dummy_table({$_POST['dummy']});"); foreach ($reponse['result'] as $data) { $values = 0; $counter = 0; foreach ($data as $value) { $values = $counter == '0' ? "" : $values . ", "; $values .= $value ? "'" . $value . "'" : 'null'; $counter++; } $atiaa->query("INSERT INTO dummy_table ({$_POST['cols']}) VALUES ({$values});"); } } else { $data = (require "ajumamoro.conf.php"); $job = new ExportDatabase(); } $queue = ajumamoro\Queue::connectBroker(['driver' => 'redis', 'scheme' => 'tcp', 'host' => '127.0.0.1']); $job->addAttribute('username', $_POST['username']); $job->addAttribute('databasename', $_POST['databasename']); $job->addAttribute('password', $_POST['password']); $job->addAttribute('localhost', $_POST['localhost']);