![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 226 Pomógł: 25 Dołączył: 22.05.2011 Ostrzeżenie: (0%) ![]() ![]() |
Nie podobają mi się te instrukcje warunkowe - czy to naprawdę musi tak być? Nie da się tego jakoś skrócić? Ma ktoś jakiś pomysł? Ten post edytował 404 23.03.2012, 01:23:54 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Nie nie musi, możesz w jednej tablicy przekazać wszystkie dane do execute. Tutaj masz przykład w manualu: http://www.php.net/manual/en/pdostatement.execute.php
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 226 Pomógł: 25 Dołączył: 22.05.2011 Ostrzeżenie: (0%) ![]() ![]() |
Tylko niestety korzystam z SQLite3
![]() |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Yyy nie rozumiem, a co to jest za różnica? Żadna. Nawet nie wiem czy da się przełączyć na sqlite2, próbowałem, bo potrzebowałem num_rows, ale się obyłem bez tego.. Nie musisz podawać typu danych podczas podpinania zapytania. Ten typ podaje się po to żeby nam rzutowało na taki typ, w przypadku kiedy dane które przesyłamy są inne niż te których oczekujemy. O czym zresztą jest wspomniane w manualu.
Sam również korzystam ze sqlite, i to nie ma żadnego znaczenia czy podpinasz dane poprzez bindValue czy podajesz tablicę tych danych do execute. |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 226 Pomógł: 25 Dołączył: 22.05.2011 Ostrzeżenie: (0%) ![]() ![]() |
Da się przełączyć na SQLite2, ale na SQLite3 już chyba nie. Zresztą, podsunąłeś mi pomysł z tą tablicą.
Dzięki ![]() Ten post edytował 404 24.03.2012, 14:54:05 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Ale nadal nie do końca rozumiesz po co się podaje typ danych jakie się podpina. Typ danych który się podaje, podaje się po to, gdyby w przypadku innych danych niż oczekiwane (chcesz inta, a tutaj ktoś ci śle stringa) to te dane są rzutowane. Czyli nie musisz nigdzie indziej tych danych rzutować, a w kilku miejscach rzutujesz do inta. Druga sprawa to nie musisz w ogóle podawać jaki to jest typ danych. Od tego masz walidator, który sprawdza twój formularz, czy w innych miejscach możesz w inny sposób sprawdzać te dane, i w tamtych miejscach je rzutować, zamiast rzutowanie przenosić na PDO.
Robi tak chociażby zend_db, i pewnie kilka innych "nakładek" na PDO i wcale to nie zmniejsza bezpieczeństwa. A w przypadku kiedy dane nie pochodzą od użytkownika (jego adres IP pobrany z tablicy super globalnej SERVER) to nie musisz ich sprawdzać czy rzutować, jak dla mnie jest to zbędny zabieg ![]() Sam zresztą nie podaje typu danych, bo dane pobrane z POST/GET odpowiednio są sprawdzane przez walidator/router i nie ma możliwości aby przeszło coś innego niż to co chcę ![]() |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 09:07 |