Próbuję odfiltrować niepotrzebne dane z bazy danych.
Filtracja odbywa się przez wybranie daty, numer użytkownika jest pobierany automatycznie po zalogowaniu.
Kod wygląda tak:
if (($searchtext !='') and ($searchtext2 !='')){ $where .="where main.time between '.%$searchtext%.' and '.%$searchtext2%.' and main.id_licznik=liczniki.id_licznik and '.$searchklient.'=liczniki.id_usera and '.$wyborprzelicz.'=liczniki.type"; } else{ if ($searchtext !=''){ $where .="where time >= '.%$searchtext%.' and main.id_licznik=liczniki.id_licznik and '.$searchklient.'=liczniki.id_usera and '.$wyborprzelicz.'=liczniki.type"; } else{ if ($searchtext2 !=''){ $where .="where time <= '.%$searchtext2%.' and main.id_licznik=liczniki.id_licznik and '.$searchklient.'=liczniki.id_usera and '.$wyborprzelicz.'=liczniki.type"; } else{ $where .='where time > 0 and main.id_licznik=liczniki.id_licznik and '.$searchklient.'=liczniki.id_usera and '.$wyborprzelicz.'=liczniki.type'; } }} } $pomiarki=@mysql_query('SELECT main.time, main.msrt, liczniki.loc1, liczniki.loc2, liczniki.loc3 FROM main, liczniki '.$where.' GROUP BY main.time, main.msrt, liczniki.loc1, liczniki.loc2, liczniki.loc3');
Kiedy nie wpiszemy żadnego ograniczenia wyrzuca dane jakie powinien, ale gdy wpiszę datę od ($searchtext) lub do ($searchtext2) lub obie nie zwraca żadnych wyników.
Daty w bazie są w formacie rrrr-mm-dd gg:mm:ss, ale dodałem %, więc nie powinno być z tym problemu.
Po wpisaniu
pokazuje prawidłowe daty (wcześniej wpisane).
echo "$searchtext $searchtext2"
Będę wdzięczny za pomoc.