встраивать html-форму в php-код

76
7

У меня есть форма на html вне php...

<form method="post" action="">
<input type="text" name="user"/></br>

<input type="submit" value="submit" name="login"/>
</form>

затем вызовите кнопку отправки из php и сделайте это

if(isset($_POST["login"]))
{

print <<<this

<form method="post" action="">
<input type="submit" name="apply"/>
</form>
this;

if(isset($_POST["apply"]))
{ print "it works";}

}

Хорошо, поэтому проблема заключается в том, что "она работает" не будет печататься со второй формы внутри php. он просто возвращает меня туда, откуда я пришел. Возможно, это глупый вопрос, пожалуйста, помогите! благодаря

спросил(а) 2021-01-28T01:10:21+03:00 3 месяца, 1 неделя назад
1
Решение
107

Ваш "применимый" код существует только в САЙТЕ код login в login. Когда вы отправляете эту вторую форму, не будет НЕТ login поле формы, потому что вы не включать в себя входное/текстовое поле этого имени во второй форме. Итак, вторая форма отправляется, нет login, и весь внутренний код никогда не выполняется. Вы, вероятно, хотите:

if(isset($_POST["login"]))
{
print <<<this

<form method="post" action="" name="apply">
<input type="hidden" name="login" value="foo" /> <!-- add this line -->
etc...

ответил(а) 2021-01-28T01:10:21+03:00 3 месяца, 1 неделя назад
44

Я не уверен, что понимаю, что вы хотите сделать с этим кодом, но вы, очевидно, пропустили некоторые детали:

_ Вы не установили поле действия в свой тег формы, поэтому я не понимаю, как вы хотите, чтобы PHP файл вызывался? _Ваш код if(isset($_POST['login'])) не имеет смысла, вы проверяете существование значения, отправленного кнопкой проверки, вы предпочитаете использовать iset isset($_POST['user'])

В надежде помочь вам

ответил(а) 2021-01-28T01:10:21+03:00 3 месяца, 1 неделя назад
44

Проблема заключается в том, что к тому моменту, когда вы проверяете if(isset($_POST["apply"])) условие входа становится недействительным, потому что все внутри if(isset($_POST["login"])).

Попробуйте принять if(isset($_POST["apply"])) вне логина IF.

ответил(а) 2021-01-28T01:10:21+03:00 3 месяца, 1 неделя назад
45

Ваши переменные объявлены в 2-х формах, поэтому на ваш php будет два вызова (полностью независимых).

Таким образом, у вас может быть вторая кнопка отправки во второй форме:

if(isset($_POST["login"]))
{

print <<<this
<form method="post" action="">
<input type="submit" name="apply" value="Second"/>
</form>

this;

}
if(isset($_POST["apply"]))
{ print "it works";}

ответил(а) 2021-01-28T01:10:21+03:00 3 месяца, 1 неделя назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема