Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
optometrists
/
cache
/
cache
/
cache
/
cache
/
cache
/
cache
/
cache
/
.wp-cli
/
wp-content
/
plugins
/
wp-phpmyadmin-extension
/
lib
/
phpMyAdmin
/
libraries
/
classes
/
Controllers
/
Database
/
MultiTableQuery
:
TablesController.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php declare(strict_types=1); namespace PhpMyAdmin\Controllers\Database\MultiTableQuery; use PhpMyAdmin\Controllers\AbstractController; use PhpMyAdmin\DatabaseInterface; use PhpMyAdmin\Query\Generator as QueryGenerator; use PhpMyAdmin\ResponseRenderer; use PhpMyAdmin\Template; use function rtrim; final class TablesController extends AbstractController { /** @var DatabaseInterface */ private $dbi; public function __construct(ResponseRenderer $response, Template $template, DatabaseInterface $dbi) { parent::__construct($response, $template); $this->dbi = $dbi; } public function __invoke(): void { $params = [ 'tables' => $_GET['tables'] ?? [], 'db' => $_GET['db'] ?? '', ]; $tablesListForQuery = ''; foreach ($params['tables'] as $table) { $tablesListForQuery .= "'" . $this->dbi->escapeString($table) . "',"; } $tablesListForQuery = rtrim($tablesListForQuery, ','); $constrains = $this->dbi->fetchResult( QueryGenerator::getInformationSchemaForeignKeyConstraintsRequest( $this->dbi->escapeString($params['db']), $tablesListForQuery ) ); $this->response->addJSON(['foreignKeyConstrains' => $constrains]); } }