Как вызвать функцию php в ajax после успеха

Я использую вызов страницы 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?

Не могли бы вы добавить содержимое вашего check_lp.php?

jrswgtr 10.09.2018 13:15

Если я правильно понимаю, вам придется сделать еще один вызов AJAX, чтобы запустить оттуда другой фрагмент PHP-кода. Помните, что код PHP работает только на сервере, а не в браузере.

RiggsFolly 10.09.2018 13:15

связанные stackoverflow.com/questions/15757750/…

Madhawa Priyashantha 10.09.2018 13:17

@jrswgtr нет ли проблем в этом файле check_lp.php .. Я знаю только то, как добавить код php в этом формате?

Arslan Kiyani 10.09.2018 13:17

Вам нужно снова запустить вызов Ajax, вы не можете вызвать функцию PHP из файла JS.

Ash0ur 10.09.2018 13:19
Дополнительное предложение: Вы должны использовать json_encode() для возврата данных из кода PHP в код Javascipt. Затем он автоматически становится объектом javascript вместо того, чтобы делать то, что я предполагаю, что вы делаете, а именно echo $var;. Так что что-то вроде echo json_encode(['status'=>1]);
RiggsFolly 10.09.2018 13:20
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
6
60
1

Ответы 1

PHP является серверным, он не работает в браузере. Ваш код «AJAX» - это jQuery, который является клиентским (вот почему вам нужен AJAX)

У вас есть два варианта:

  1. Создайте метод javascript, который будет действовать как оболочка, и используйте внутри него другой вызов ajax:
function submitForm() {
    $.ajax({
        type: "POST",
        url: "myPhpFile.php"
        data: {callSubmitFunction: 1}
        success: function(response) {
            // do something if you need to here
        }
    });
}  
  1. (Предполагая, что ваш PHP отправляет форму на основе имени метода) Отправьте форму, используя вместо этого javascript / jQuery.
document.getElementById("myForm").submit();
// or
$("#myForm").submit();

Обратите внимание, что приведенные примеры не являются примерами копирования и вставки - вам нужно будет изменить их в соответствии с вашим кодом.

спасибо за поддержку, но небольшая проблема в том, что я пишу это $ ("# myForm"). submit (); внутри успешно: функция (ответ) {} тогда форма не отправляется

Arslan Kiyani 10.09.2018 13:38

вы изменили #myForm на действительный ID вашей формы?

SierraOscar 10.09.2018 13:44

как получить значения в php? можете ли вы написать несколько строк php, например: $ batches = $ _REQUEST ['batchid']; $ sessionid = $ _REQUEST ['sessionid']; $ moduleid = $ _REQUEST ['moduleid']; $ weekid = $ _REQUEST ['weekid'];

Arslan Kiyani 10.09.2018 13:47

Другие вопросы по теме