Remove some useless comments
[phpmyadmin.git] / libraries / classes / Controllers / Database / MultiTableQueryController.php
blobd01514bad57c1f7a75d7fefb1593d82aa80110bc
1 <?php
3 declare(strict_types=1);
5 namespace PhpMyAdmin\Controllers\Database;
7 use PhpMyAdmin\Database\MultiTableQuery;
8 use PhpMyAdmin\DatabaseInterface;
9 use PhpMyAdmin\Response;
10 use PhpMyAdmin\Template;
12 /**
13 * Handles database multi-table querying
15 class MultiTableQueryController extends AbstractController
17 /** @var DatabaseInterface */
18 private $dbi;
20 /**
21 * @param Response $response
22 * @param string $db Database name.
23 * @param DatabaseInterface $dbi
25 public function __construct($response, Template $template, $db, $dbi)
27 parent::__construct($response, $template, $db);
28 $this->dbi = $dbi;
31 public function index(): void
33 $this->addScriptFiles([
34 'vendor/jquery/jquery.md5.js',
35 'database/multi_table_query.js',
36 'database/query_generator.js',
37 ]);
39 $queryInstance = new MultiTableQuery($this->dbi, $this->template, $this->db);
41 $this->response->addHTML($queryInstance->getFormHtml());
44 public function displayResults(): void
46 global $PMA_Theme;
48 $params = [
49 'sql_query' => $_POST['sql_query'],
50 'db' => $_POST['db'] ?? $_GET['db'] ?? null,
53 $this->response->addHTML(MultiTableQuery::displayResults(
54 $params['sql_query'],
55 $params['db'],
56 $PMA_Theme->getImgPath()
57 ));
60 public function table(): void
62 $params = [
63 'tables' => $_GET['tables'],
64 'db' => $_GET['db'] ?? null,
66 $constrains = $this->dbi->getForeignKeyConstrains(
67 $params['db'],
68 $params['tables']
70 $this->response->addJSON(['foreignKeyConstrains' => $constrains]);