![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 101 Pomógł: 0 Dołączył: 11.09.2007 Ostrzeżenie: (0%) ![]() ![]() |
czy w pdo można warunkowo podawać parametry w pytaniu select, czy trzeba sklejać stringa pytającego ?
Chodzi mi o coś takiego:
i teraz jeśli mam spełnione jakieś warunki binduje te 3 parametry. Ale jeśli są niespełnione to tego warunku powinno nie być lub też dla poszczególnych parametrów wyrzucić je z where'a. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
musisz sam tworzyc wlasciwego selecta na podstawie warunkow. Niby skad PDO ma wiedziec ze ma ci akurat usunac ten a ten warunek. PDO tylko podczepia sie pod parametry co mu kazesz.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 101 Pomógł: 0 Dołączył: 11.09.2007 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
ale skad PDO ma wiedziec ze jesli nie zbindujesz :nazwa3 to ona ma usuanc warunek "and nazwa3=:nazwa3 " ? No skad on ma to wiedziec? Uwierz mi, ale PDO nie czyta ci w myslach (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Podsumowujac: musisz sam tworzyc zapytania takie jakie maja byc. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 101 Pomógł: 0 Dołączył: 11.09.2007 Ostrzeżenie: (0%) ![]() ![]() |
ale skad PDO ma wiedziec ze jesli nie zbindujesz :nazwa3 to ona ma usuanc warunek "and nazwa3=:nazwa3 " ? No skad on ma to wiedziec? Uwierz mi, ale PDO nie czyta ci w myslach (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Podsumowujac: musisz sam tworzyc zapytania takie jakie maja byc. No więc tak, myślałem sobie że ktoś kto to tworzył powiedział bibliotece tak: Gdy zostanie przygotowane zapytanie select z parametrami w klauzuli where to zamiast wartości człowiek napisze dwukropek i nazwę jakiejś zmiennej której przypiszę wartość przed wywołaniem zapytania. Natomiast jeśli tej zmiennej nic nie przepisze to pomiń ją i nie uzywaj w where bo jednak jak się okazuje w tym przypadku w danym momencie jest niepotrzebna. tak sobie to pomyślałem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ale cóż nie ja PDO budowałem więc się dostosuję. |
|
|
![]()
Post
#6
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
to sobie teraz pomysl ze masz taki warunek
... and pole1=1 and nazwa3=:nazwa3 gdzie pole1=1 dodajesz tez tylko wtedy gdy masz :nazwa3 Skad ten biedny ktos kto tworzyl PDO ma wiedziec ze chcesz rowniez usunac ten warunek pole1=1 ktory pojawia sie tylko z :nazwa3 Wymyslasz chlopie w tej chwili bez zastanowienia sie nad tym ze jest to praktycznie nie mozliwe do zrealizowania tej Twojej zachcianki (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) edit down: widze ze dyskusja z Tobą prowadzi do nikąd. Ja juz wiec podziękuje. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 101 Pomógł: 0 Dołączył: 11.09.2007 Ostrzeżenie: (0%) ![]() ![]() |
to sobie teraz pomysl ze masz taki warunek ... and pole1=1 and nazwa3=:nazwa3 gdzie pole1=1 dodajesz tez tylko wtedy gdy masz :nazwa3 Wymyslasz chlopie w tej chwili bez zastanowienia sie nad tym ze jest to praktycznie nie mozliwe do zrealizowania tej Twojej zachcianki (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) A to jaki problem żeby to zapytanie przy braku nazwa3 kończyło się tak: ... and pole1=1. bo ja dokładnie tak zrobić. Sorry długo nie bawiłem się php, ale nie widzę nic nielogicznego w stwierdzeniu: "Jeśli klient nie powie ci jaki chce mieć kolor samochodu to daj mu dowolny." ,a PDO robi tak "Jeśli klient nie powie ci jaki chce mieć kolor samochodu to samochodu nie sprzedawaj." Ten post edytował wojtekw 11.03.2008, 14:09:53 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 10:35 |