POST, GET, Onsubmit - что лучше для простого перехода по URL с передаваемой переменной?
Что выгоднее применять для простого перехода по URL с передаваемой переменной "code"
<form method="POST"- здесь всё ясно, через сессию POST, далее редирект поheader("Location:.<form method="get" target="_self" action="page.php?code="<?php print($_POST['code']); ?>">- здесь вот такиv образом. Мне кажется самый некорректный вариант.onsubmit="window.location = 'weather.php?code='+code.value; return false;"- здесь просто и здорово. JavaScript и здесь выручает.
Верно ли я понимаю, что для простого перехода по кнопки на URL с вписанием в URL переменной, третий вариянт самый простой и самый оптимальный для реализации?
Ответы (1 шт):
Для простого перехода по URL в протоколе HTTP предусмотрен метод GET
Для простой реализации метода GET в HTML используются гиперссылки. Поэтому если код находится на сервере, и надо передать его на клиент с тем, чтобы потом можно было по нему кликнуть, пишем так
<a href="page.php?"<?= http_build_query(['code' => $code]) ?>">Переход</a>Если переход необходимо осуществить после обработки POST запроса, то это делается HTTP заголовком Location
header("Location: page.php?".http_build_query(['code' => $_POST['code']])); die;Если все происходит на клиенте, а примеры на РНР добавлены в вопрос от балды, то можно использовать яваскрипт и window.location