Выполнение функции PHP в другом файле с использованием AJAX - PullRequest
1 голос
/ 11 апреля 2019

Я просматривал прошлые ответы и крал код, но, похоже, ничего не работает! Когда скрипт загружается, я пытаюсь выполнить функцию PHP в отдельном файле PHP. Я получаю сообщение о том, что оно было отправлено, НО, глядя на консоль, ни одно из моих консольных сообщений не появляется.

Я прочитал, что функция AJAX требует ответного ответа, поэтому я добавил echo ('Text'). Я использую браузер Google. Я не большой на JSQuery, Javascript или AJAX. PHP и HTML моя сильная сторона.

В моем HTML-коде:

<body onload = "Start()">

<script>
    var Start = function() {
        $(document).ready(function(){
            $.ajax({
            type: "POST",
            url: 'MainRoutine.php?action=Startfunc',
            data: {func: "Startfunc"},
            success: function(response) {
                $('.result_Postme').text(response);
            }
        })
        alert("Form submitted successfully.\n"); // this is working!
    });
}
</script>

В моем файле MainRoutine.php:

if (isset($_POST['func']) && ($_POST['func'] == 'Startfunc')) { 
    ChromePhp::log("Start Handle"); // the expected console message
    echo('Text'); // not sure why I'm doing this...
    Start(); // this is the function I'm trying to execute!
}else{
    ChromePhp::log("Error"); // not even this one displays
}

function Start() {
    echo('Text');  // not sure why I'm doing this either
}

Я не пытаюсь передать какие-либо переменные в функцию PHP "Start ()", я просто хочу ее выполнить!

1 Ответ

0 голосов
/ 11 апреля 2019

Вы передаете action в качестве параметра в своем коде.Вы проверяете func, как в $_POST.

. Пожалуйста, убедитесь, что ниже приведен правильный код:

<script>
    var Start = function() {
        $(document).ready(function(){
            $.ajax({
            type: "POST",
            url: 'MainRoutine.php?action=Startfunc',
            data: {func: "Startfunc"},
            success: function(response) {
                $('.result_Postme').text(response);
            }
        })
        alert("Form submitted successfully.\n"); // this is working!
    });
}
</script>

И в вашем файле MainRoutine.php:

if(isset($_REQUEST['action']) && $_REQUEST['action']=='Startfunc'){ 
    ChromePhp::log("Start Handle"); // the expected console message
    echo('Text'); // not sure why I'm doing this...
    Start(); // this is the function I'm trying to execute!
}else{
    ChromePhp::log("Error"); // not even this one displays
}

function Start() {
    echo('Text');  // not sure why I'm doing this either
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...