URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 4413
[ Назад ]

Исходное сообщение
"Таки есть разница в методах GET и POST????"

Отправлено Ляксандр , 13-Окт-06 06:23 
Здравствуйте, уважаемые!

нифига не понимаю видать....
взял тут покапатся с сайтиком, который написан на перле (CGI) с использованием CGI.pm
в формах везде используется метод пост, НО так же я вижу в строке браузера все переданные переменные аля метод гет, т.е ?var=value... соответсвенно если глупый чайник-секретарш нажмет обновить страницу, повторим последнее действие...

может кто что знает? в каку сторону рыть?


Заранее спасибо


Содержание

Сообщения в этом обсуждении
"Таки есть разница в методах GET и POST????"
Отправлено mrwel , 13-Окт-06 08:50 
Привет!
Хоть привет кода привёл бы что ли.


"Таки есть разница в методах GET и POST????"
Отправлено Ляксандр , 16-Окт-06 06:21 
>Привет!
>Хоть привет кода привёл бы что ли.


влехкую
===============хтмл===================
<HTML><HEAD><META HTTP-EQUIV=Content-Type CONTENT=text/html; charset=KOI8-R>
<TITLE>Администрирование - Дополнительные услуги</TITLE>
</HEAD>
<STYLE type=text/css>
  BODY { font-family: Tahoma; font-size: 12px; color:#000000; background-color: #dfefff; margin-left:10px; margin-right:10px; margin-top:3px; margin-bottom:0px;}
  A { color:#225588; }
  TABLE { font-family: Tahoma; font-size: 12px; }
  TR { font-family: Tahoma; font-size: 12px; }
  TD { font-family: Tahoma; font-size: 12px; }
  .btbl { border-color: #4fafaf;  border-width: 1px; }
  A.atbl { color: #000030; text-decoration: none; }
</STYLE>
<BODY>
<DIV align=center><h2>Дополнительные услуги</h2></DIV><br>
  <TABLE border=1 cellspacing=0 class=btbl style='BACKGROUND-COLOR:#ffffff'>
    <TR style='background-color:#4fafaf'>
      <TH class=btbl align=center>Наименование</TH>
      <TH class=btbl align=center>Стоимость</TH>
      <TH class=btbl colspan=2>Действия</TH>
   </TR>
  <FORM ACTION="/cgi-bin/admin/usl.pl" METOD="POST">
    <TR style='background-color:#efef9f'>
      <TD><INPUT TYPE=text MAXLENGTH=100 NAME='NAME' SIZE=20 VALUE='Доп. услуга'></TD>
      <TD><INPUT TYPE=text SIZE=12 NAME='COST' VALUE='0.00'></TD>
      <TD  colspan=2><INPUT TYPE=hidden NAME='Action' VALUE='add'><INPUT TYPE=submit VALUE="Добавить"></TD></FORM>
  </TABLE>
</BODY></HTML>
=====================================================================================
при нажатии кнопочки добавить (Новая услуга по 10р) в браузере видим:

http://site/cgi-bin/admin/usl.pl?NAME=%EE%CF%...


"Таки есть разница в методах GET и POST????"
Отправлено XAnder , 16-Окт-06 08:18 
>  <FORM ACTION="/cgi-bin/admin/usl.pl" METOD="POST">

!!! METHOD !!!


"Таки есть разница в методах GET и POST????"
Отправлено mrwel , 17-Окт-06 03:53 
>>  <FORM ACTION="/cgi-bin/admin/usl.pl" METOD="POST">
>
>!!! METHOD !!!


Такое ощущение что скрипт посде отработки метода POST, тупо редиректит с параметрами твоей формы


if($ENV{REQUEST_METHOD} eq "POST"){
  my $name = param('name);
  ...
  print redirect("server.com?name=$name ... ");

}


"Таки есть разница в методах GET и POST????"
Отправлено mrwel , 17-Окт-06 03:54 
Код скрипта кидай, а не хтмлки

"Таки есть разница в методах GET и POST????"
Отправлено mrwel , 17-Окт-06 03:56 
>Код скрипта кидай, а не хтмлки


А ещё прикол ... METHOD, а сказали выше ...

у тебя <form metod

правильно <form method


"Таки есть разница в методах GET и POST????"
Отправлено Ляксандр , 17-Окт-06 08:31 
>>Код скрипта кидай, а не хтмлки
>
>
>А ещё прикол ... METHOD, а сказали выше ...
>
>у тебя <form metod
>
>правильно <form method


всем спасибо, я дурак :)


"Таки есть разница в методах GET и POST????"
Отправлено svazist , 29-Окт-06 20:35 
>Здравствуйте, уважаемые!
>
>нифига не понимаю видать....
>взял тут покапатся с сайтиком, который написан на перле (CGI) с использованием
>CGI.pm
>в формах везде используется метод пост, НО так же я вижу в
>строке браузера все переданные переменные аля метод гет, т.е ?var=value... соответсвенно
>если глупый чайник-секретарш нажмет обновить страницу, повторим последнее действие...
>
>может кто что знает? в каку сторону рыть?
>
>
>Заранее спасибо


Для боръбы с "глупый чайник-секретарш" после обработки действия отправлять редирект (302) либо на ссылающуюся страницу , либо на промежуточную, тогда проблем с дублированием информации не будет.