Fix sul test del database
This commit is contained in:
parent
29957f64f5
commit
ef36f98f8e
|
@ -32,7 +32,6 @@ if (post('db_host') !== null) {
|
||||||
// Test della configurazione
|
// Test della configurazione
|
||||||
if (post('test') !== null) {
|
if (post('test') !== null) {
|
||||||
ob_end_clean();
|
ob_end_clean();
|
||||||
$state = 2;
|
|
||||||
|
|
||||||
if ($dbo->isConnected()) {
|
if ($dbo->isConnected()) {
|
||||||
$requirements = [
|
$requirements = [
|
||||||
|
@ -58,22 +57,34 @@ if (post('db_host') !== null) {
|
||||||
) {
|
) {
|
||||||
$pieces = explode(', ', explode(' ON ', str_replace('GRANT ', '', $privileges))[0]);
|
$pieces = explode(', ', explode(' ON ', str_replace('GRANT ', '', $privileges))[0]);
|
||||||
|
|
||||||
|
// Permessi generici sul database
|
||||||
if (in_array('ALL', $pieces) || in_array('ALL PRIVILEGES', $pieces)) {
|
if (in_array('ALL', $pieces) || in_array('ALL PRIVILEGES', $pieces)) {
|
||||||
|
$requirements = [];
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Permessi specifici sul database
|
||||||
foreach ($requirements as $key => $value) {
|
foreach ($requirements as $key => $value) {
|
||||||
if (!in_array($value, $pieces)) {
|
if (in_array($value, $pieces)) {
|
||||||
$state = 1;
|
|
||||||
|
|
||||||
break 2;
|
|
||||||
} else {
|
|
||||||
unset($requirements[$key]);
|
unset($requirements[$key]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
|
// Permessi insufficienti
|
||||||
|
if (!empty($requirements)) {
|
||||||
|
$state = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Permessi completi
|
||||||
|
else {
|
||||||
|
$state = 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Connessione fallita
|
||||||
|
else {
|
||||||
$state = 0;
|
$state = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue