что именно происходит со скриптом от действия в php - PullRequest
0 голосов
/ 21 декабря 2009
<form action="somesite.com" name="somename">  
<input type="text" name="data" value="">  
</form> 

Если я попытаюсь выполнить этот код в моей локальной системе, значение с именем «data» будет перенесено на сайт «somesite.com»

Это правильный способ передачи данных на любой другой веб-сайт, который уже существует? Что будет с этими данными (если они будут успешно перенесены на somesite.com)?

В общем, что именно происходит со значением 'data', если мы не используем это значение в какой-либо части нашего скрипта?

Надеюсь, я ясно ???

Ответы [ 3 ]

3 голосов
/ 21 декабря 2009

Если data не обработан сценарием, запущенным на сервере, получающем HTTP-запрос , он впоследствии пропадет.

Ваш браузер создает HTTP-запрос с данными формы при отправке формы и отправляет ее на веб-сервер, указанный в действии формы. Веб-сервер просто знает, как обрабатывать HTTP-запрос как таковой . Ваши PHP-скрипты должны знать, как обрабатывать данные внутри HTTP-запроса. HTTP - это протокол без сохранения состояния, поэтому веб-сервер ничего не хранит.

Примечание: технически, при получении запросов GET с добавленными параметрами, вы можете найти их в журнале доступа вашего веб-сервера, чтобы они сохранялись, но это не значит, что вы будете использовать их повторно. Взгляните на Данные тампера аддона Firefox , чтобы увидеть, что происходит при отправке формы. Если вы хотите использовать IE, попробуйте Fiddler .

Что касается использования GET или POST в качестве метода формы, придерживайтесь рекомендации W3Cs :

1.3 Быстрый контрольный список для выбора HTTP GET или POST

* Use GET if:
      o The interaction is more like a question (i.e., it is a safe
        operation such as a query, read operation, or lookup).
* Use POST if:
      o The interaction is more like an order, or
      o The interaction changes the state of the resource in a way
        that the user would perceive (e.g., a subscription to a service), or
      o The user be held accountable for the results of the interaction.

Однако до окончательного решения используйте HTTP GET или POST, пожалуйста, также учитывать соображения для конфиденциальных данных и практические соображения .

2 голосов
/ 21 декабря 2009

Поскольку у вас внутри кнопки form нет кнопки отправки, у пользователя возникнут трудности с ее отправкой. Но если эта форма будет отправлена ​​каким-либо образом, браузер перенаправит на следующий адрес: http://somesite.com/?data=somevalue. Как видите, значение будет отправлено с запросом GET, который является значением по умолчанию. Если вы не используете data в какой-либо части скрипта, которая должна обрабатывать отправку формы, то вы, вероятно, потратили несколько байтов пропускной способности, но в остальном ничего не произойдет.

0 голосов
/ 21 декабря 2009

Форма работает с любым URL-адресом как действием, если он находится на другом веб-сайте, вы должны указать абсолютный URL-адрес:

http://www.somesite.com

Это чистый html, он не имеет ничего общего с php. Конечно, поскольку данные отправляются на другой веб-сайт, вы не можете обрабатывать их в своем скрипте. Это до целевого сайта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...