Подтвердить что ты не робот

HTTP post: параметры URL и данные формы

Когда я выполняю HTTP-запрос POST через веб-форму, есть ли какая-либо разница (практически или теоретически) между параметрами, указанными в URL-адресе, и параметрами, переданными с формой на стороне сервера?

Могу ли я делать POST с параметрами url и ожидать того же результата, что и с вводом форм?

Как

  <form action="/?id=2" method="post">
      <input type="text" name="name" value="John"/>
      <input type="submit" value="submit"/>
  </form>

Или:

  <form action="/?id=2&name=John" method="post">
      <input type="submit" value="submit"/>
  </form>

Спасибо.

4b9b3361

Ответ 1

Ссылки, предоставленные Gabriel и BrokenGlass, действительно классные, но позвольте мне дать вам 2 цента.

Я предполагаю, что вы уже знаете немного о том, как извлекать данные, отправленные из формы на стороне сервера. Если вы этого не сделаете, начните там, и ответы придут быстрее, чем вы могли себе представить.

Ну, параметры, отправленные по URL-адресу или действию атрибута формы, являются параметрами данных GET. Они будут проанализированы и доступны как таковые. Период.

Поля ввода из формы с методом POST отправляются как данные POST и анализируются и доступны как таковые.

Из приведенных вами примеров, и предположим, что вы используете PHP, мы могли бы получить следующее:

Пример 1

$_GET['id']
$_POST['name']

Пример 2

$_GET['id']
$_GET['name']

Надеюсь, что понятия понятны.

Ответ 2

Вы должны прочитать эту статью о различиях между GET и POST (GET - это когда вы помещаете свои параметры в URL-адрес, а POST - когда вы помещаете свои параметры в форму).

Кроме того, на этот вопрос уже был дан ответ fooobar.com/info/25048/...