przesyłanie danych z insert do SELECT WHERE |
przesyłanie danych z insert do SELECT WHERE |
29.12.2019, 02:22:39
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 29.12.2019 Ostrzeżenie: (0%) |
Proszę o pomoc
Jestem nowy na forum i początkującym w PHP i SQL. Mam formularz w którym jest parę pól insert do wpisywania danych, następnie dane przesyłane są metodą post do zapytania SELECT. np Imię, Nazwisko, Stanowisko Jak chcę znaleźć dane zawierające np imię i nazwisko bez podania stanowiska zapytanie uznaje stanowisko za puste i nie podaje prawidłowego wyniku. Podpowiedzcie czy jest możliwość podania instrukcji warunkowej sprawdzającej czy pole jest puste lub innego rozwiązania problemu. Oczywiście dopuszczam by nie były wszystkie pola wypełnione i instrukcja powinna zmieniać zapytanie. Myślałem o sprawdzeniu za pomocą if empty i podaniu różnych poleceń SELECT. przy 3 zmiennych jest to do ogarnięcia przy 20 to już jest niezła zabawa a znając życie jest prostsze rozwiązanie. SELECT `Imie`, `Nazwisko`, `Stanowisko` FROM `pracownicy` WHERE `Imie` LIKE :imie and Nazwisko LIKE :nazwisko and Stanowisko LIKE :stanowisko |
|
|
29.12.2019, 06:14:42
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 365 Pomógł: 1114 Dołączył: 30.08.2006 Ostrzeżenie: (0%) |
Dobrze kombinujesz. Możesz zawsze hurtem usunąć z tablicy post puste pola.
-------------------- |
|
|
6.01.2020, 15:21:05
Post
#3
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 29.12.2019 Ostrzeżenie: (0%) |
Rozwiązałam problem sprawdzając czy dana jest pusta i jeśli tak przypisuję jej wartość "%" i wyszukuje mi wszystkie pola.
|
|
|
6.01.2020, 15:22:04
Post
#4
|
|
Grupa: Moderatorzy Postów: 36 457 Pomógł: 6296 Dołączył: 27.12.2004 |
Twoje rozwiazanie to jedno z gorszych. TEraz zmuszasz baze do niepotrznych i ciezkich obliczen.
Takie rzeczy sie robi na zasadzie nie dodawania do zapytania tego, czego nie chcesz. Tu masz przyklad jak to sie robi poprawnie http://nospor.pl/wyszukiwarka-zapytanie-za...d-warunkow.html -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
6.01.2020, 15:29:59
Post
#5
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 29.12.2019 Ostrzeżenie: (0%) |
Niestety mam kolejny problem
`imie` LIKE "%" OR `imie` IS NULL PDO: `imie` LIKE :imie OR `imie` IS NULL Muszę w zapytaniu dodać coś takiego gdzie jak imie = "%" wtedy jest NULL a jak inna wartość to IS NULL jak zapisuję PDO tak" PDO: `imie` LIKE :imie OR `imie` IS :imie_null gdzie za imie_null wstawiam wartość "NULL" lub "NOT NULL" pojawia się bład PDO Podpowiedzcie proszę jak rozwiązać problem |
|
|
6.01.2020, 15:30:54
Post
#6
|
|
Grupa: Moderatorzy Postów: 36 457 Pomógł: 6296 Dołączył: 27.12.2004 |
Juz podalem ci jak to sie robi poprawnie. To rozwiaze twoj aktualny problem rowniez
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
6.01.2020, 15:59:50
Post
#7
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 29.12.2019 Ostrzeżenie: (0%) |
zrobione brakowało mi kropki przy nazwie zmiennych dzięki za pomoc a rozwiązanie ze wstawianiem warunków jest ciekawe spróbuję przerobić kod
Dzięki za pomoc |
|
|
Wersja Lo-Fi | Aktualny czas: 26.04.2024 - 15:09 |