Форум dkLab и Denwer
Здесь общаются Web-разработчики.
Генеральный спонсор:
Хостинг «Джино»

Переменные окружения (mrMoRiC)
Author Message
mrMoRiC
Участник форума



Joined: 16 Jul 2007
Posts: 76
Карма: -2
   поощрить/наказать


PostPosted: Wed Aug 01, 2007 2:10 pm (написано за 6 минут 32 секунды)
   Post subject: Переменные окружения
Reply with quote

Опять вопрос по книге. Сейчас дошёл до 84 страницы, тема "Переменные окружения". В ней автор вкратце описывает назначение основных из них. Для меня всё очень понятно, кроме одного (далее цитирую автора):
Quote:
QUERY_STRING
Параметы, которые в URL указаны после вопросительного знака. Напомню, что они доступны как при методе GET, так и при методе POST (если в последнем случае они были определены в атрибуте action тега <form>).
Так вот, мне непонятна приписка, размещённая в скобках. Как это параметры могут быть определены в атрибуте action??? В атрибуте action назначается скрипт, в который передаётся управление, но не параметры! Прошу объяснить.
Back to top
View user's profile Send private message
Guest






Карма: 388
   поощрить/наказать


PostPosted: Wed Aug 01, 2007 7:08 pm (спустя 4 часа 58 минут; написано за 1 минуту 6 секунд)
   Post subject:
Reply with quote

<form method="post" action="script?key1=val1&key2=val2">

даже в этом случае QUERY_STRING == "key1=val1&key2=val2"

так что все верно
Back to top
mrMoRiC
Участник форума



Joined: 16 Jul 2007
Posts: 76
Карма: -2
   поощрить/наказать


PostPosted: Thu Aug 02, 2007 1:45 am (спустя 6 часов 37 минут; написано за 7 секунд)
   Post subject:
Reply with quote

Странно никогда я не видел такой записи. Обычно, когда используется метод "post", то никаких параметров не прописывается после скрипта, просто название/путь и всё. Могли бы дать пример на страницу в Сети с такой организаций, конечно если это нетрудно?
Back to top
View user's profile Send private message
mrMoRiC
Участник форума



Joined: 16 Jul 2007
Posts: 76
Карма: -2
   поощрить/наказать


PostPosted: Thu Aug 02, 2007 1:52 am (спустя 6 минут; написано за 2 минуты 38 секунд)
   Post subject:
Reply with quote

Вот, например фрагмент кода этой страницы:
Code (html): скопировать код в буфер обмена
<form (december.com/html/4/element/form.html) method="post" action="/card.php"> (december.com/html/4/element/.html)
        <td (december.com/html/4/element/td.html) align="right" nowrap="nowrap"> (december.com/html/4/element/.html)
          &nbsp;<input (december.com/html/4/element/input.html) type="image" name="report" value="report" onClick="return confirm('Вы уверены, что хотите сообщить об этом сообщении модераторам форума?')" width="16" height="18" src="templates/subSilver/images/icon_bcard.gif" alt="Отправить жалобу на этот пост модераторам форума" title="Отправить жалобу на этот пост модераторам форума" > (december.com/html/4/element/.html)&nbsp;<input (december.com/html/4/element/input.html) type="hidden" name="post_id" value="139223"> (december.com/html/4/element/.html)
          <a (december.com/html/4/element/a.html) href="posting.php?mode=quote&amp;p=139223"> (december.com/html/4/element/.html)<span (december.com/html/4/element/span.html) style="border:2px #FFFFFF groove;padding:0px 3px 0px 3px; margin:0px; font-family:Arial; font-weight:bold; text-decoration:none; text-align:center; font-size:12; width:62; " title="Ответить с цитатой"> (december.com/html/4/element/.html)Цитата</span></a>   
        </td>
        </form>
Здесь в атрибуте action указан лишь скрипт, а параметров нет. Вернее они есть, но их не требуется писать в строке запроса, это необходима лишь для GET, но не для POST.
Back to top
View user's profile Send private message
Rumata
Профессионал



Joined: 17 Aug 2003
Posts: 1850
Карма: 185
   поощрить/наказать


PostPosted: Thu Aug 02, 2007 9:47 am (спустя 7 часов 55 минут; написано за 1 минуту 21 секунду)
   Post subject:
Reply with quote

mrMoRiC wrote:
Странно никогда я не видел такой записи.
mrMoRiC wrote:
Вот, например фрагмент кода этой страницы
плохо смотрели - например, эта страница forum.dklab.ru/viewtopic.php?p=139232
Code (html): скопировать код в буфер обмена
<form (december.com/html/4/element/form.html) method="post" action="/viewtopic.php?t=26671&amp;start=0"> (december.com/html/4/element/.html)
Back to top
View user's profile Send private message
mrMoRiC
Участник форума



Joined: 16 Jul 2007
Posts: 76
Карма: -2
   поощрить/наказать


PostPosted: Thu Aug 02, 2007 12:45 pm (спустя 2 часа 58 минут; написано за 4 минуты 8 секунд)
   Post subject:
Reply with quote

Окей. Но зачем это нужно??? Не пойму никак, ведь метод post предназначен для эстетики: убивает длинную строку параметров после названия скрипта, в адресной строке, и передаёт эти параметры уже после, после всех заголовков. Передавать какие-то параметры в адресной строке, значит убить вобще идею использования post. Я так считаю.
Back to top
View user's profile Send private message
Maus
Модератор



Joined: 29 Jun 2003
Posts: 8151
Карма: 271
   поощрить/наказать

Location: пос. Омсукчан Магаданской области

PostPosted: Thu Aug 02, 2007 5:24 pm (спустя 4 часа 38 минут; написано за 4 минуты 42 секунды)
   Post subject:
Reply with quote

mrMoRiC wrote:
ведь метод post предназначен для эстетики
ошибаетесь, метод post возник в первую очередь из практических соображений: в GET-запросе строка параметров ограничена (что-то около 2000 символов).
Аплоад файлов, кстати, тоже идет через POST.
Где-то (здесь или на XPoint) проскакивала тема о том, что идеологически движок PHP действует некорректно (в POST-запросе значения после ? разбирает и помещает в $_GET), но прямого запрета на подобное поведение вроде бы нет (и к единому мнению в той теме тоже не пришли).
Back to top
View user's profile Send private message
Юрий Насретдинов
Модератор



Joined: 13 Mar 2003
Posts: 8642
Карма: 198
   поощрить/наказать

Location: 007 495

PostPosted: Thu Aug 02, 2007 9:27 pm (спустя 4 часа 2 минуты; написано за 19 секунд)
   Post subject:
Reply with quote

Maus wrote:
в POST-запросе значения после ? разбирает и помещает в $_GET
Лично я наоборот нахожу это довольно удобным... Это позволяет иногда упростить логику скриптов.
Back to top
View user's profile Send private message Send e-mail
mrMoRiC
Участник форума



Joined: 16 Jul 2007
Posts: 76
Карма: -2
   поощрить/наказать


PostPosted: Fri Aug 03, 2007 2:48 am (спустя 5 часов 20 минут; написано за 2 минуты 8 секунд)
   Post subject:
Reply with quote

Quote:
ошибаетесь, метод post возник в первую очередь из практических соображений: в GET-запросе строка параметров ограничена (что-то около 2000 символов).
Действительно.
Quote:
Лично я наоборот нахожу это довольно удобным... Это позволяет иногда упростить логику скриптов.
Не представляю себе, можете пример дать(пусть даже на пальцах)? Хочу понять/представить, где это упрощает логику скриптов.
Back to top
View user's profile Send private message
Дмитрий Котеров
Администратор



Joined: 10 Mar 2003
Posts: 13665
Карма: 413
   поощрить/наказать


PostPosted: Sat Aug 04, 2007 10:21 pm (спустя 1 день 19 часов 33 минуты; написано за 54 секунды)
   Post subject:
Reply with quote

Начнете программировать реальные приложения - поймете. Иногда проще в action скопировать REQUEST_URI, не думая о том, какие там параметры, чем создавать hidden-поля в форме с теми же именами и потом их отдельно обрабатывать.
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   Reply to topic All times are GMT + 3 Hours
Page 1 of 1    Email to a Friend.
You cannot post new topics in this forum. You cannot reply to topics in this forum. You cannot edit your posts in this forum. You cannot delete your posts in this forum. You cannot vote in polls in this forum. You cannot attach files in this forum. You can download files in this forum.
XML