CopyFormController.php 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?php
  2. declare(strict_types=1);
  3. namespace PhpMyAdmin\Controllers\Database\Structure;
  4. use PhpMyAdmin\Controllers\Database\AbstractController;
  5. use function __;
  6. final class CopyFormController extends AbstractController
  7. {
  8. public function __invoke(): void
  9. {
  10. global $db, $dblist;
  11. $selected = $_POST['selected_tbl'] ?? [];
  12. if (empty($selected)) {
  13. $this->response->setRequestStatus(false);
  14. $this->response->addJSON('message', __('No table selected.'));
  15. return;
  16. }
  17. $urlParams = ['db' => $db];
  18. foreach ($selected as $selectedValue) {
  19. $urlParams['selected'][] = $selectedValue;
  20. }
  21. $databasesList = $dblist->databases;
  22. foreach ($databasesList as $key => $databaseName) {
  23. if ($databaseName == $db) {
  24. $databasesList->offsetUnset($key);
  25. break;
  26. }
  27. }
  28. $this->response->disable();
  29. $this->render('database/structure/copy_form', [
  30. 'url_params' => $urlParams,
  31. 'options' => $databasesList->getList(),
  32. ]);
  33. }
  34. }