Я использую вызов страницы ajax после успешного вызова функции php, но проблема в том, что функция не определена, ошибка отображается на панели консоли.
вот код ajax
$("#submit_btn").on('click',function() {
var batchid = $('#batchid').val();
var sessionid = $('#sessionid').val();
var moduleid = $('#moduleid').val();
var instructorid = $('#instructorid').val();
$.ajax({
type: "POST",
url: "check_lp.php",
data: {batch: batchid, session: sessionid, module: moduleid, instructor: instructorid},
success: function(result) {
var value = $.trim(result);
if (value == "1"){
alert('Lesson Plan Found');
} else{
submitForm();
}
},
});
});
код функции php
function submitForm()
{
}
есть ли правильный способ вызвать функцию php?
Если я правильно понимаю, вам придется сделать еще один вызов AJAX, чтобы запустить оттуда другой фрагмент PHP-кода. Помните, что код PHP работает только на сервере, а не в браузере.
связанные stackoverflow.com/questions/15757750/…
@jrswgtr нет ли проблем в этом файле check_lp.php .. Я знаю только то, как добавить код php в этом формате?
Вам нужно снова запустить вызов Ajax, вы не можете вызвать функцию PHP из файла JS.
json_encode() для возврата данных из кода PHP в код Javascipt. Затем он автоматически становится объектом javascript вместо того, чтобы делать то, что я предполагаю, что вы делаете, а именно echo $var;. Так что что-то вроде echo json_encode(['status'=>1]);





PHP является серверным, он не работает в браузере. Ваш код «AJAX» - это jQuery, который является клиентским (вот почему вам нужен AJAX)
У вас есть два варианта:
function submitForm() {
$.ajax({
type: "POST",
url: "myPhpFile.php"
data: {callSubmitFunction: 1}
success: function(response) {
// do something if you need to here
}
});
}
document.getElementById("myForm").submit();
// or
$("#myForm").submit();
Обратите внимание, что приведенные примеры не являются примерами копирования и вставки - вам нужно будет изменить их в соответствии с вашим кодом.
спасибо за поддержку, но небольшая проблема в том, что я пишу это $ ("# myForm"). submit (); внутри успешно: функция (ответ) {} тогда форма не отправляется
вы изменили #myForm на действительный ID вашей формы?
как получить значения в php? можете ли вы написать несколько строк php, например: $ batches = $ _REQUEST ['batchid']; $ sessionid = $ _REQUEST ['sessionid']; $ moduleid = $ _REQUEST ['moduleid']; $ weekid = $ _REQUEST ['weekid'];
Не могли бы вы добавить содержимое вашего
check_lp.php?