Если я правильно вас понимаю, вы хотите иметь возможность распространять значение $_GET
даже с помощью метода POST
. Вы можете сделать это, добавив строку запроса к атрибуту действия второй POST
формы:
<form action="<?php echo htmlentities($_SERVER['PHP_SELF'] . '?' . $_SERVER['QUERY_STRING'] );?>" name="atualizarDominio" method="post">
РЕДАКТИРОВАТЬ: Хорошо, я думаю, что понимаю немного лучше.
В первом случае (со вторым действием формы как $_SERVER['PHP_SELF']
) вы заставляете форму отправлять данные на страницу без всех добавленных данных $_GET
(если вы посмотрите на URL, то $_GET
данные добавляются к имени файла после ?
), поэтому, когда вы ищете $_GET['infoDominio']
, его больше не существует, и поэтому $nomeDominio
по-прежнему устанавливается в пустую строку. Когда вы отправляете форму POST
, $_POST['atualizarDominio']
IS устанавливается, и вы получаете сообщение I'm posting
, но в $nomeDominio
.
значение не установлено.
Теперь, когда вы изменяете действие второй формы на ""
, вы говорите браузеру отправить пользователя на ту же страницу, на которой вы только что находились, которая включает в себя все данные $_GET
в URL (проверьте его - вы найдете ?nomeDominio=whatever&infoDominio=
в адресной строке еще). Когда вы отправляете вторую форму после отправки первой формы, все данные $_GET
распространяются, и поэтому устанавливается $_GET['infoDominio']
, $nomeDominio
присваивается любое значение, указанное в первой форме, и, таким образом, отображается в страница после отправки второй формы.
Тот факт, что имя формы и имя кнопки отправки совпадают, не должен влиять на это.
Если я все еще не понимаю, о чем вы спрашиваете, пожалуйста, дайте мне знать. В противном случае я надеюсь, что это поможет.