![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 190 Pomógł: 27 Dołączył: 23.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Przykład: Jakaś instrukcja SELECT, która pobiera dane i wyświetla na ekranie. Zastanawiam się w jaki sposób to zrobić. Do głowy przychodzą mi 2 sposoby.
1 sposób: Pobrać wszystkie dane i wyświetlać za pomocą pętli 10 wyników. Pod wynikami jest opcja Następne i Poprzednie 2 sposób: Pobierać z bazy tylko 10 wyników, a kiedy użytkownik kliknie np Następne to skrypt z bazy pobiera kolejne 10 wyników. Zastosowałbym tutaj ocję LIMIT. Który sposób Waszym zdaniem jest lepszy? Pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
Drugi.
|
|
|
![]()
Post
#3
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Przychylam się do opini Kszycha, Drugi sposób jest zdecydowanie lepszy. NIe ma sensu bez potrzeby przetwarzać wszystkich danych
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 190 Pomógł: 27 Dołączył: 23.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Dziękuje
Pozdrawiam |
|
|
-Gość_J4r0d- |
![]()
Post
#5
|
Goście ![]() |
A jak coś takiego zrobić? Bo jakoś nie mogę sobie z tym poradzić..
|
|
|
![]()
Post
#6
|
|
Grupa: Przyjaciele php.pl Postów: 1 224 Pomógł: 40 Dołączył: 6.07.2004 Skąd: Wuppertal Ostrzeżenie: (0%) ![]() ![]() |
wiec... to jest problem 'porcjowania' danych (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
bylo poruszane na forum 100 razy ale podpowiem Ci conieco... twoje zapytanie np:
zamień na:
wywołanie np: Kod http://www.twoja.strona.pl/pokaz.php?porcja=0 http://www.twoja.strona.pl/pokaz.php?porcja=10 http://www.twoja.strona.pl/pokaz.php?porcja=50 oczywiscie brakuje tu duzo, jest to bardzo niebezpieczne rozwiązanie, ale ilustruje zasadę dzialania. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 190 Pomógł: 27 Dołączył: 23.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Z tym LIMIT to czaje (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Cytat
wywołanie np: Kod http://www.twoja.strona.pl/pokaz.php?porcja=0 http://www.twoja.strona.pl/pokaz.php?porcja=10 http://www.twoja.strona.pl/pokaz.php?porcja=50 oczywiscie brakuje tu duzo, jest to bardzo niebezpieczne rozwiązanie, ale ilustruje zasadę dzialania. Ale dlaczego przez GET. Nie można zrobić w pętli? Tzn wypisuje 10 wyników i są dwa buttony (poprzednie, natępne). Wszystko oparte na formularzu.. I co miałeś na myśli pisząc, że jest niebezpieczne? |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 0 Dołączył: 7.05.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(J4r0d @ 2005-05-08 11:07:49) Ale dlaczego przez GET. Nie można zrobić w pętli? Tzn wypisuje 10 wyników i są dwa buttony (poprzednie, natępne). Wszystko oparte na formularzu.. I co miałeś na myśli pisząc, że jest niebezpieczne? Proponuję pomyśleć czym się różni server-side od client-side. Potencjalnie niebezpieczne, bo pole z query jest wklejane do zapytania SQL, ale latwo sie przed tym zabezpieczyc. |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 1 190 Pomógł: 27 Dołączył: 23.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(Peter Riley @ 2005-05-08 11:41:14) Cytat Proponuję pomyśleć czym się różni server-side od client-side. Wiem czym się różni. Ale nie widzę powodu dla którego moje rozwiązanie nie byłoby poprawne (IMG:http://forum.php.pl/style_emoticons/default/dry.gif) Cytat Potencjalnie niebezpieczne, bo pole z query jest wklejane do zapytania SQL, ale latwo sie przed tym zabezpieczyc. Poprzez warunki sprawdzające? Czy może jakieś inne rozwiązanie? Pozdrawiam |
|
|
![]()
Post
#10
|
|
Grupa: Moderatorzy Postów: 1 566 Pomógł: 37 Dołączył: 14.05.2003 Skąd: Kraków ![]() |
Cytat(J4r0d @ 2005-05-08 13:50:14) Poprzez warunki sprawdzające? Czy może jakieś inne rozwiązanie? Przeczytaj to. |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 1 190 Pomógł: 27 Dołączył: 23.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(Ociu @ 2005-05-08 11:59:27) Cytat(J4r0d @ 2005-05-08 13:50:14) Poprzez warunki sprawdzające? Czy może jakieś inne rozwiązanie? Przeczytaj to. Dziękuje. Przeczytałem bardzo uważnie. Kiedyś już czytałem o tych atakach, ale jeszcze nie pisałem żadnego poważnego projektu. W topicu do którego podałeś lika, każdy podaje swoje pomysły. Nie wiem któy jest najlepszy, bo nigdy nie sprawdzałem, ale chyba ostatni (szkoda że go nie kumam:P ). Ja w formularzach stosuje strip_tags. Próbowałem w formularzu wpisać np. drop table users i zapisać taki formularz. Oczywiście nic złego się nie stało. Czyli rozuiem, żę ataki SQL Injection jest niebezpieczne przez odpowiednie zmodyfikowanie URLa? Prze formularze się nie da? Ja korzystam z sesji i zmiennych przesyłanych przez $_POST, więc problem chyba mnie nie dotyczy (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) Jeśli jestem w błędzie to proszę poprawcie mnie - projekt musi być bezpieczny |
|
|
-Gość_J4r0d- |
![]()
Post
#12
|
Goście ![]() |
Proszę doradźcie sposób na zabezpieczenie przed takimi atakiami. COś nieskomplikowanego ale skutecznego
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 1 190 Pomógł: 27 Dołączył: 23.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(ActivePlayer @ 2005-05-08 02:06:48) wiec... to jest problem 'porcjowania' danych (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) bylo poruszane na forum 100 razy ale podpowiem Ci conieco... Zmieniłem zapytanie na
Linki mam następujące: a w kodzi php dopisałem coś takiego:
I problem w tym, że nie wiem jak zrobić, że gdy użytkownik naciśnie link "Następne" to zwiększe $przod o 10, a jak "Poprzednie" to zmienię $tył o 10. Jednocześnie tego nie mogę zrobić? Jak sprawdzić które wybrał? Skrypt wywołuje sam siebie |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 186 Pomógł: 0 Dołączył: 23.09.2003 Skąd: Siemianowice Śląskie Ostrzeżenie: (0%) ![]() ![]() |
zapoznaj się z tym Ilość odpowiedzi na stronie?, jak to zrobić? tam masz gotowe rozwiązanie
|
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 1 190 Pomógł: 27 Dołączył: 23.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(mario @ 2005-05-08 18:20:29) zapoznaj się z tym Ilość odpowiedzi na stronie?, jak to zrobić? tam masz gotowe rozwiązanie Wielkie dzięki (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Pozdrawiam |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 10:33 |