1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- <?php
- declare(strict_types=1);
- namespace PhpMyAdmin\Controllers\Server;
- use PhpMyAdmin\Config\PageSettings;
- use PhpMyAdmin\Controllers\AbstractController;
- use PhpMyAdmin\DatabaseInterface;
- use PhpMyAdmin\Response;
- use PhpMyAdmin\SqlQueryForm;
- use PhpMyAdmin\Template;
- use PhpMyAdmin\Url;
- /**
- * Server SQL executor
- */
- class SqlController extends AbstractController
- {
- /** @var SqlQueryForm */
- private $sqlQueryForm;
- /** @var DatabaseInterface */
- private $dbi;
- /**
- * @param Response $response
- * @param DatabaseInterface $dbi
- */
- public function __construct($response, Template $template, SqlQueryForm $sqlQueryForm, $dbi)
- {
- parent::__construct($response, $template);
- $this->sqlQueryForm = $sqlQueryForm;
- $this->dbi = $dbi;
- }
- public function index(): void
- {
- global $err_url;
- $this->addScriptFiles([
- 'makegrid.js',
- 'vendor/jquery/jquery.uitablefilter.js',
- 'vendor/stickyfill.min.js',
- 'sql.js',
- ]);
- $pageSettings = new PageSettings('Sql');
- $this->response->addHTML($pageSettings->getErrorHTML());
- $this->response->addHTML($pageSettings->getHTML());
- $err_url = Url::getFromRoute('/');
- if ($this->dbi->isSuperUser()) {
- $this->dbi->selectDb('mysql');
- }
- $this->response->addHTML($this->sqlQueryForm->getHtml());
- }
- }
|