From 04d6d5ca99ebfd1cebb8ce06618fb3811fc1a8aa Mon Sep 17 00:00:00 2001 From: Charles Date: Thu, 9 Jan 2020 10:55:03 +0100 Subject: phpmyadmin working --- srcs/phpmyadmin/tbl_structure.php | 68 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 srcs/phpmyadmin/tbl_structure.php (limited to 'srcs/phpmyadmin/tbl_structure.php') diff --git a/srcs/phpmyadmin/tbl_structure.php b/srcs/phpmyadmin/tbl_structure.php new file mode 100644 index 0000000..294a390 --- /dev/null +++ b/srcs/phpmyadmin/tbl_structure.php @@ -0,0 +1,68 @@ +get('dbi'); + +/** @var string $db */ +$db = $containerBuilder->getParameter('db'); + +/** @var string $table */ +$table = $containerBuilder->getParameter('table'); + +$dbi->selectDb($db); +$table_class_object = $dbi->getTable($db, $table); +$reread_info = $table_class_object->getStatusInfo(null, true); +$GLOBALS['showtable'] = $table_class_object->getStatusInfo(null, (isset($reread_info) && $reread_info ? true : false)); +if ($table_class_object->isView()) { + $tbl_is_view = true; + $tbl_storage_engine = __('View'); +} else { + $tbl_is_view = false; + $tbl_storage_engine = $table_class_object->getStorageEngine(); +} +$tbl_collation = $table_class_object->getCollation(); +$table_info_num_rows = $table_class_object->getNumRows(); +/* Define dependencies for the concerned controller */ +$dependency_definitions = [ + 'db_is_system_schema' => $db_is_system_schema, + 'tbl_is_view' => $tbl_is_view, + 'tbl_storage_engine' => $tbl_storage_engine, + 'table_info_num_rows' => $table_info_num_rows, + 'tbl_collation' => $tbl_collation, + 'showtable' => $GLOBALS['showtable'], +]; + +/** @var Definition $definition */ +$definition = $containerBuilder->getDefinition(StructureController::class); +array_map( + static function (string $parameterName, $value) use ($definition) { + $definition->replaceArgument($parameterName, $value); + }, + array_keys($dependency_definitions), + $dependency_definitions +); + +/** @var StructureController $controller */ +$controller = $containerBuilder->get(StructureController::class); +$controller->indexAction($containerBuilder); -- cgit