[php][pdo] Dodanie kawałka zapytania przy prepare() i bindValue()? |
[php][pdo] Dodanie kawałka zapytania przy prepare() i bindValue()? |
26.03.2020, 13:05:29
Post
#1
|
|
Grupa: Zarejestrowani Postów: 190 Pomógł: 0 Dołączył: 25.11.2015 Ostrzeżenie: (0%) |
Witam.
Jestem w trakcie nauki obsługi zapytań za pomocą PDO. Posiadam pewną klase wspomagającą, która fajnie się sprawdza przy operacjach INSERT i UPDATE. Mam problem z wykonaniem zwykłego zapytania SQL w którym doklejam ze zmiennej kawałek kodu w zależności od potrzeb. Otrzymuje błąd, że zapytanie jest niepoprawne,: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''' ORDER BY z.id DESC LIMIT 100' at line 1
Czy można w takie sposób za pomocą BindValue wklejać całe kawałki kodu, czy nie jest taki kod realizowany? Ten post edytował luis2luis 26.03.2020, 13:06:55 |
|
|
26.03.2020, 13:07:33
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 453 Pomógł: 6292 Dołączył: 27.12.2004 |
Bindowanie sluzy wkladaniu wartosci do zapytania a nie calych kawalkow zapytan
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
26.03.2020, 13:19:33
Post
#3
|
|
Grupa: Zarejestrowani Postów: 190 Pomógł: 0 Dołączył: 25.11.2015 Ostrzeżenie: (0%) |
Bindowanie sluzy wkladaniu wartosci do zapytania a nie calych kawalkow zapytan Dobrze rozumie. Czy poniższy zapis jest poprawny, czy jeszcze szukać innego sposobu?
Ten post edytował luis2luis 26.03.2020, 13:22:57 |
|
|
26.03.2020, 13:48:40
Post
#4
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) |
Działa?
|
|
|
26.03.2020, 14:07:59
Post
#5
|
|
Grupa: Zarejestrowani Postów: 190 Pomógł: 0 Dołączył: 25.11.2015 Ostrzeżenie: (0%) |
|
|
|
26.03.2020, 14:21:39
Post
#6
|
|
Grupa: Zarejestrowani Postów: 6 365 Pomógł: 1114 Dołączył: 30.08.2006 Ostrzeżenie: (0%) |
Oczywiście że ci nie zadziała bo bindujesz cały ciąg 1,2,3 zamiast poszczególnych wartości.
https://prophp.pl/advice/show/15/jak_skasow...ola_checkbox%3F -------------------- |
|
|
26.03.2020, 14:43:46
Post
#7
|
|
Grupa: Zarejestrowani Postów: 190 Pomógł: 0 Dołączył: 25.11.2015 Ostrzeżenie: (0%) |
W sumie po to się się binduje , żeby nie wklejać ze zmiennej dodatkowy kod i zabezpieczenie usuwa potencjalnie niebezpieczny kod, czyli taki co może wpłynąć na wygląd zapytania.
Mój drugi kod, który podałem działa. Czyli najpierw zmienną wklejam części kodu a później binduje konkretną wartość. |
|
|
26.03.2020, 16:06:30
Post
#8
|
|
Grupa: Moderatorzy Postów: 36 453 Pomógł: 6292 Dołączył: 27.12.2004 |
Cytat Mój drugi kod, który podałem działa A testowales to dla kilku kategorii czy zawsze tylko dla jednej? Inna sprawa ze w takim przypadku jak tutaj nie ma sensu sie bawic w zadne bindowanie. Masz zwykle liczby do wlozenia wiec rzutujesz na INT kazda po kolei i wkldasz normalnie do zapytania jako tekst -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
26.03.2020, 17:30:32
Post
#9
|
|
Grupa: Zarejestrowani Postów: 324 Pomógł: 105 Dołączył: 7.08.2012 Ostrzeżenie: (0%) |
|
|
|
Wersja Lo-Fi | Aktualny czas: 23.04.2024 - 15:46 |