Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Realizacja GET aka bezpieczny formularz.
Forum PHP.pl > Forum > Przedszkole
flasht
Witam
Pisze sobie maly skrypcik ktory bedzie do mnie wysylal wypelniony formularz. Chcialbym zrealizowac go za pomoca GET azeby nie mozna bylo tego zautomatyzowac.

Bardzo bym prosil o rady jak sie za to zabrac.
Mam sobie stronke z formularzem... no i co? Teraz chcialbym zeby po nacisnieciu submint wyslal mi na maila wszystkie wartosci wypelnionych pol i pokazal uzytkownikowi cos w stylu "Dziekujemy za zgloszenie."

Z gory dziekuje za pomoc!
Pozdrawiam.
hwao
Gotowca nie dostaniesz... :-P

  1. <form action="plik.php" method="post">
  2. <input type="text" name="text" />
  3. <input type="submit" name="submit" value="wysylaj" />
  4. </form>


  1. <?php
  2. if( isSet( $_POST['text'] ) ) {
  3.  $text = $_POST['text'];
  4.  echo 'Wpisales '. $text;
  5.  echo '<p>Dziekuje za wypelnienie</p>';
  6. }
  7. else {
  8. echo 'Nic nie wyslales :(';
  9. }
  10.  
  11. ?>

Teraz poczytaj o funckji mail" title="Zobacz w manualu PHP" target="_manual() i masz juz gotowe.
flasht
Cytat(hwao @ 2005-06-02 15:35:00)
Gotowca nie dostaniesz... :-P

  1. <form action="plik.php" method="post">
  2. <input type="text" name="text" />
  3. <input type="submit" name="submit" value="wysylaj" />
  4. </form>


  1. <?php
  2. if( isSet( $_POST['text'] ) ) {
  3.    $text = $_POST['text'];
  4.    echo 'Wpisales '. $text;
  5.    echo '<p>Dziekuje za wypelnienie</p>';
  6. }
  7. else {
  8.   echo 'Nic nie wyslales :(';
  9. }
  10.  
  11. ?>

Teraz poczytaj o funckji mail" title="Zobacz w manualu PHP" target="_manual() i masz juz gotowe.

No wlasnie nie chcialem za pomoca post tylko get... :/ Bo za pomoca post to ktokolwiek moze wejsc sobie bezposrednio na plik.php?text=spam i juz... a z tego co rozumiem to get temu zapobiega... myle sie?
nospor
do get jest widoczny a nie post
get przesyla w url dane
Radarek
Cytat(flasht @ 2005-06-02 14:30:21)
Witam
Pisze sobie maly skrypcik ktory bedzie do mnie wysylal wypelniony formularz. Chcialbym zrealizowac go za pomoca GET azeby nie mozna bylo tego zautomatyzowac.

Bardzo bym prosil o rady jak sie za to zabrac.
Mam sobie stronke z formularzem... no i co? Teraz chcialbym zeby po nacisnieciu submint wyslal mi na maila wszystkie wartosci wypelnionych pol i pokazal uzytkownikowi cos w stylu "Dziekujemy za zgloszenie."

Z gory dziekuje za pomoc!
Pozdrawiam.

Jak ktos sie uprze to zautomatyzuje wszystko smile.gif. Czy to post czy get...
hwao
getem jeszcze latwiej poniewaz podaje sie w adresei co sie chce (a jak chcesz getem to zamien w formulazu method="get" i $_GET)

Jak chcesz zabezpiecyzc to daj rysunek ktory przedstawia np jakies liczy i user musi je wpisac poprawie, jak sie nie uda to uznaje ze zle wprowadzil... smile.gif
flasht
To jest jakis pomysl... a jak cos takiego sie robi ? smile.gif
hwao
generujesz jakis losowy text (liczbe, ciag znakow) i wysylasz go w COOKIE zahashowanym w md5" title="Zobacz w manualu PHP" target="_manual() i potem z tego (nie zahashowanego) generujesz rysunek (wazne zeby byl to rysunek i nie dalo sie go odczytac w zaden sposob w zrodle).
Jak juz to masz to potem jak user wysyla formularz to bierzesz to co masz w w $_POST/$_GET do md5" title="Zobacz w manualu PHP" target="_manual() i sprawdzasz czy to jest to samo co masz w $_COOKIE . Jezeli tak to znaczy ze kod jest poprawny, jezeli nie to ze albo nie wpisany albo bledny.
Radarek
Cytat(hwao @ 2005-06-02 17:48:54)
generujesz jakis losowy text (liczbe, ciag znakow) i wysylasz go w COOKIE zahashowanym w md5" target="_blank() i sprawdzasz czy to jest to samo co masz w $_COOKIE . Jezeli tak to znaczy ze kod jest poprawny, jezeli nie to ze albo nie wpisany albo bledny.

Nigdy nie nalezy ufac temu co przychodzi od strony przegladarki. To nie jest dobre rozwiazanie. Podany przez Ciebie sposob mozna bardzo latwo obejsc. Przeciez wystarczy wybrac sobie dowolna liczbe x, obliczyc md5(x) i wyslac cos takiego do serwera. Po to wymyslili takie sposoby, zeby nie mozna bylo np napisac programow ktore robia to automatycznie, w tym przypadku obejscie tego byloby banalnie proste.
flasht
Dobra nie wazne! A nie mozna tego zrealizowac tak, zeby skrypt sprawdzal skad sie bierze dany request? Alba jakas sesje przy wchodzeniu na strone z formularzem otworzyc?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.