У меня есть эта стандартная кнопка отправки, которые отправляют форму как это:
<form method="post" id="form_submit">
...
<input class="button" type="submit" name="Submit" value="Submit">
</form>
И я проверяю, нажата ли кнопка отправки с помощью этого:
if(isset($_POST['Submit'])){
//update DB
}
Теперь у меня есть отправлять ссылка с помощью jQuery:
<a href="#" onclick="publish(); return false;">Submit</a>
Код JS:
$("#form_submit").submit();
Что является альтернативным путем здесь, чтобы использоваться здесь для if(isset($_POST['Submit']))
так как я отправляю форму с помощью JavaScript?
Если я правильно вас понял, попробуйте следующее:
if ($_SERVER['REQUEST_METHOD'] === 'POST')
{
// your code.........
}
Вы должны добавить скрытый ввод
в форму, которая всегда будет отправляться, и проверьте это вместо кнопки (, которая отправляется, только если ее нажимают .. )
Если я правильно понял вашу проблему, вы можете просто изменить тип ввода на скрытый.
<form method="post" id="form_submit">
...
<input type="hidden" name="Submit">
</form>
Будет определена переменная $ _ POST ['Submit'].
Лучшее решение - «Не делайте этого». Если вы хотите отправить форму, используйте кнопку отправки (не делайте это как побочный эффект при нажатии гиперссылки в верхней части страницы). Любой JavaScript, который вы хотите запустить, может быть обработан в событии формы submit
.
Если вы действительно хотите сделать это в качестве побочного эффекта, проверьте наличие любого другого поля, которое, как вы знаете, будет установлено. Вы можете добавить скрытое поле, чтобы убедиться, что будет одно из заданных сочетаний имени / значения, если хотите.