Miglioria filtro = e != nelle tabelle
This commit is contained in:
parent
3955f39852
commit
7de012905d
|
@ -201,25 +201,28 @@ class Query
|
||||||
$equal = string_starts_with($real_value, '=');
|
$equal = string_starts_with($real_value, '=');
|
||||||
$notequal = string_starts_with($real_value, '!=');
|
$notequal = string_starts_with($real_value, '!=');
|
||||||
|
|
||||||
if ($minus || $more || $equal || $notequal) {
|
if ($minus || $more) {
|
||||||
$sign = string_contains($real_value, '=') ? '=' : '';
|
$sign = string_contains($real_value, '=') ? '=' : '';
|
||||||
if ($more) {
|
if ($more) {
|
||||||
$sign = '>'.$sign;
|
$sign = '>'.$sign;
|
||||||
} elseif ($minus) {
|
} elseif ($minus) {
|
||||||
$sign = '<'.$sign;
|
$sign = '<'.$sign;
|
||||||
} elseif ($equal) {
|
|
||||||
$sign = '=';
|
|
||||||
} else {
|
|
||||||
$sign = '!=';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$value = trim(str_replace(['<', '=', '>', '!'], '', $value));
|
$value = trim(str_replace(['<', '>'], '', $value));
|
||||||
|
|
||||||
if ($more || $minus) {
|
if ($more || $minus) {
|
||||||
$search_filters[] = 'CAST('.$search_query.' AS UNSIGNED) '.$sign.' '.prepare($value);
|
$search_filters[] = 'CAST('.$search_query.' AS UNSIGNED) '.$sign.' '.prepare($value);
|
||||||
} else {
|
} else {
|
||||||
$search_filters[] = $search_query.' '.$sign.' '.prepare($value);
|
$search_filters[] = $search_query.' '.$sign.' '.prepare($value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
} else if ($equal){
|
||||||
|
$value = trim(str_replace(['='], '', $value));
|
||||||
|
$search_filters[] = ($search_query.' = '.prepare($value). ' OR '.$search_query.' LIKE '.prepare('% '.$value) . ' OR '.$search_query.' LIKE '.prepare($value.' %').' OR '.$search_query.' LIKE '.prepare('% '.$value.' %'));
|
||||||
|
} else if ($notequal) {
|
||||||
|
$value = trim(str_replace(['!='], '', $value));
|
||||||
|
$search_filters[] = ($search_query.' != '.prepare($value). ' AND '.$search_query.' NOT LIKE '.prepare('% '.$value) . ' AND '.$search_query.' NOT LIKE '.prepare($value.' %').' AND '.$search_query.' NOT LIKE '.prepare('% '.$value.' %'));
|
||||||
} else {
|
} else {
|
||||||
$search_filters[] = $search_query.' LIKE '.prepare('%'.$value.'%');
|
$search_filters[] = $search_query.' LIKE '.prepare('%'.$value.'%');
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue