![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 398 Pomógł: 0 Dołączył: 13.07.2005 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Potrzebuje troszke teorie z wiązanych z tytułem tematu, a mianowicie: 1) Którą metodą - $_GET czy $_POST lepiej jest przekazywać zmienne, których użytkownik nie powinien widzieć? 2) Jaka jest różnica między $_GET i $_POST? W jakich przypadkach używać pierwsze a w jakich drugie?? Głównie chodzi mi o te 2 pytania... Z góry THX za odpowiedź! -------------------- "Państwo to ja" Ludwik XIV
"Wróg zaatakuje to co kochasz" Ojciec Chrzestny "Wszystko powinno być proste jak to tylko możliwe, ale nie prostsze..." A. Einstein "Wyobraźnia jest ważniejsza niż wiedza" Albert Einstein "Nieprawda powtarzana wielokrotnie staje się prawdą" |
|
|
![]()
Post
#2
|
|
![]() Grupa: Developerzy Postów: 823 Pomógł: 12 Dołączył: 18.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
ad 1. Dane z formularzy itp przysyłać należy formą POST
ad 2. zależy co chcesz osiągnąć: a ) jeżeli wywołujesz jakiś dział, np newsy to użyjesz GETa z pasku adresu... b ) ...ale jak chcesz np. aby user komentował jakieś newsy, wówczas użyjesz POSTa. Takie są standardy... poczytaj też o funkcjach htmlspeciachars(), trim(), htmlentiles() - przydadzą się ![]() pozdro ![]() Ten post edytował Athlan 25.07.2006, 10:29:16 -------------------- Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 398 Pomógł: 0 Dołączył: 13.07.2005 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Np.:
2a) przesyłanie danych produktu - cena, ilosc, itp. (przy wrzuceniu np. do koszyka) wtedy użyje post? Czyli w głównej mierze chodzi o to, ze metoda GET przesylamy dane, które sa mało istotne dla bezpieczenstwa a metoda POST ktore sa istotne? ![]() -------------------- "Państwo to ja" Ludwik XIV
"Wróg zaatakuje to co kochasz" Ojciec Chrzestny "Wszystko powinno być proste jak to tylko możliwe, ale nie prostsze..." A. Einstein "Wyobraźnia jest ważniejsza niż wiedza" Albert Einstein "Nieprawda powtarzana wielokrotnie staje się prawdą" |
|
|
![]()
Post
#4
|
|
![]() Grupa: Developerzy Postów: 823 Pomógł: 12 Dołączył: 18.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat 2a) przesyłanie danych produktu - cena, ilosc, itp. (przy wrzuceniu np. do koszyka) wtedy użyje post? w post przesyłasz tylko ilość i id produktu, cena wybiera się z bazy, bo każdy będzie mógł ją sobie zmienić w źródle strony i wysłać formularz z localhosta ![]() Cytat Czyli w głównej mierze chodzi o to, ze metoda GET przesylamy dane, które sa mało istotne dla bezpieczenstwa a metoda POST ktore sa istotne? ![]() nie... chodzi głónie o wygodę... $_GET przesyłasz w linkach a $_POST w formularzach ![]() pozdrawiam ![]() Ten post edytował Athlan 25.07.2006, 11:00:14 -------------------- Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij |
|
|
![]()
Post
#5
|
|
![]() Grupa: Przyjaciele php.pl Postów: 698 Pomógł: 3 Dołączył: 28.03.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Nie ma to żadnego związku z bezpieczeństwem... Dane przesyłane GET-em są dodawane do URL żądania, natomiast dane przekazywane POST-em są dostarczane wewnątrz żądania. I jedne i drugie można ukraść.
Pierwszą metodą przekazujesz dane krótkie, ale ważne dla funkcjonalności strony. Potrzebny jest prosty sposób, żeby przesyłać właśnie szczegóły żądania. Z resztą sama nazwa GET mówi, że zmienne te raczej określają żądanie. POST z kolej nadaje się do przesyłania większych danych, takich jak te pochodzące z formularzy. Przesyłanie jest mało wygodne, nie sprawdza się przy konstruowaniu żądania. -------------------- |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 398 Pomógł: 0 Dołączył: 13.07.2005 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
No dobra, wszystko jasne tylko nie rozumiem po co wyłączane są teraz global_register... Global register czyli zmienne globalne... Przecież w URL zmienie wartosc nacisne ENTER i zmieni mi... Nie da sie tego jakos zabezpieczyc przed takim czyms??
A jeszcze jedno Ludvik - napisałeś, że "Przesyłanie jest mało wygodne, nie sprawdza się przy konstruowaniu żądania." Tutaj chodzi o to, ze getem moge pobrać wartość z np. <A href="plik.php?cos=www"></a> zmiennej cos, a przy pomocy POST'a nie moge? Ten post edytował gladiror 25.07.2006, 11:07:59 -------------------- "Państwo to ja" Ludwik XIV
"Wróg zaatakuje to co kochasz" Ojciec Chrzestny "Wszystko powinno być proste jak to tylko możliwe, ale nie prostsze..." A. Einstein "Wyobraźnia jest ważniejsza niż wiedza" Albert Einstein "Nieprawda powtarzana wielokrotnie staje się prawdą" |
|
|
![]()
Post
#7
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 112 Pomógł: 20 Dołączył: 10.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat Tutaj chodzi o to, ze getem moge pobrać wartość z np. <A href="plik.php?cos=www"></a> zmiennej cos, a przy pomocy POST'a nie moge? Nie możesz tak jak piszesz. Wszystkie zmienne jakie widzisz w adresie URL i przekazujesz je za pomocą adresu to zawsze tylko i wyłącznie zmienne $_GET.Cytat No dobra, wszystko jasne tylko nie rozumiem po co wyłączane są teraz global_register... Global register czyli zmienne globalne... Przecież w URL zmienie wartosc nacisne ENTER i zmieni mi... Nie da sie tego jakos zabezpieczyc przed takim czyms?? Masz rację - wklepiesz ręcznie inną wartośc zmiennej w $_GET i zostanie ona zastąpiona. Tak samo, możesz spreparować formularz i przesłać jakiekolwiek zmienne za pomocą $_POST. Ale nie o to chodzi z register_globals. O tym powinineś poczytać w manualu i na forum - przewijało się wiele, wiele razy. Generalnie, przy włączonym register_globals możesz za pomocą modyfikacji zmiennych $_GET/$_POST nadpisać dowolną inną zmienną w kodzie. pozdr. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 15.07.2025 - 02:16 |