Visitar URL original
Improve error message when UseDbSearch config is disabled · phpmyadmin/phpmyadmin@77f9ebb · GitHub
Skip to content

Commit 77f9ebb

Browse files
committed
Improve error message when UseDbSearch config is disabled
Replaces Html\Generator::mysqlDie() to avoid calling the exit construct. Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
1 parent c337b72 commit 77f9ebb

3 files changed

Lines changed: 27 additions & 11 deletions

File tree

‎libraries/classes/Controllers/Database/SearchController.php‎

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,9 @@
77
use PhpMyAdmin\Controllers\AbstractController;
88
use PhpMyAdmin\Database\Search;
99
use PhpMyAdmin\DatabaseInterface;
10-
use PhpMyAdmin\Html\Generator;
10+
use PhpMyAdmin\Html\MySQLDocumentation;
1111
use PhpMyAdmin\Http\ServerRequest;
12+
use PhpMyAdmin\Message;
1213
use PhpMyAdmin\ResponseRenderer;
1314
use PhpMyAdmin\Template;
1415
use PhpMyAdmin\Url;
@@ -49,14 +50,21 @@ public function __invoke(ServerRequest $request): void
4950
return;
5051
}
5152

52-
// If config variable $cfg['UseDbSearch'] is on false : exit.
5353
if (! $GLOBALS['cfg']['UseDbSearch']) {
54-
Generator::mysqlDie(
55-
__('Access denied!'),
56-
'',
57-
false,
58-
$GLOBALS['errorUrl']
54+
$errorMessage = __(
55+
'Searching inside the database is disabled by the [code]$cfg[\'UseDbSearch\'][/code] configuration.'
5956
);
57+
$errorMessage .= MySQLDocumentation::showDocumentation('config', 'cfg_UseDbSearch');
58+
$this->response->setRequestStatus(false);
59+
if ($this->response->isAjax()) {
60+
$this->response->addJSON('message', Message::error($errorMessage)->getDisplay());
61+
62+
return;
63+
}
64+
65+
$this->render('error/simple', ['error_message' => $errorMessage, 'back_url' => $GLOBALS['errorUrl']]);
66+
67+
return;
6068
}
6169

6270
$GLOBALS['urlParams']['goto'] = Url::getFromRoute('/database/search');

‎psalm-baseline.xml‎

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13388,10 +13388,7 @@
1338813388
</PossiblyNullArgument>
1338913389
</file>
1339013390
<file src="libraries/classes/Table.php">
13391-
<DeprecatedMethod occurrences="49">
13392-
<code>escapeString</code>
13393-
<code>escapeString</code>
13394-
<code>escapeString</code>
13391+
<DeprecatedMethod occurrences="46">
1339513392
<code>escapeString</code>
1339613393
<code>escapeString</code>
1339713394
<code>escapeString</code>

‎templates/error/simple.twig‎

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<div class="container">
2+
<h2>{{ 'Something went wrong'|trans }}</h2>
3+
<div class="card">
4+
<div class="card-body">
5+
{{ error_message|error }}
6+
{% if back_url != '' %}
7+
<a class="card-link" href="{{ back_url }}">{{ 'Go back'|trans }}</a>
8+
{% endif %}
9+
</div>
10+
</div>
11+
</div>

0 commit comments

Comments
 (0)