jquery — проверка PHP $ _POST после отправки формы запроса

Каков наилучший способ убедиться, что логический тест в самоссылающейся форме PHP правильно идентифицирует кнопку HTML, используемую для отправки формы, когда эта форма фактически отправляется с помощью jquery.submit (), а не нажатием кнопки? сам?

<!DOCTYPE html>
<html>

<head>
<meta charset="utf-8">
<title> Total Tutor </title>
<link type="text/css" rel="stylesheet" href="course.css">
<script src="../jquery.js"></script>

</head>
<body>

<script>
$(document).ready(function() {

//event that triggers the javascript/jquery form submission

$('li').dblclick(function()
{
selectedCourse=$(this).text();
sessionStorage.removeItem('selectedCourse');
sessionStorage.setItem('selectedCourse', selectedCourse);
editForm();
});

//the function called by the normal button submission and the alternative jQuery only submission: note the non jQuery one sets the $-POST variable fine

function editForm() {

var s= confirm( 'Would you like to edit ' +selectedCourse+ '');

if(s)
{
alert('form is called');
}
}

$('#edit-button').click(function() { editForm(); });

});

</script>

<?php
if(!isset($_POST['submit']))
{
?>

<ul>
<li>Maths</li>
<li>English</li>
</ul>

<form  id="edit_delete" method="POST" action=" <?php echo $_SERVER['PHP_SELF']; ?>">
<button type="submit"  id="edit-button"  name="submit"  value="edit"    ><img  src="../images/pencil.png"></button>
<button  type="submit" id="delete-button"  name="submit" value="delete"  ><img src="../images/deleteo.png"></button>
</form>

}

<?php
else
{
if($_POST['submit']=='edit')
{
?>
<p>Thank you for selecting edit</p>
<?php
}

if($_POST['submit']=='delete')
{
?>
<p>Thank you for selecting delete</p>
<?php
}

}
?>
</body>
</html>

1

Решение

Используйте переменную, чтобы указать, как данные были опубликованы.

В вашей HTML-форме:

<input type="hidden" name="wasClicked" id="wasClicked" value="1" />

В вашем JQuery:

$('#wasClicked').val("0");

Тогда в вашем PHP, тестируйте $_POST['wasClicked'] чтобы увидеть, если это 0 или же 1

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]