Вызов функции php из javaScript

Мне нужно обрабатывать нажатие кнопок через ajax и по нажатию одной из них вызывать функцию php и передавать в нее параметры, потом из нее так же вызывать функцию js с параметрами тоже. как это можно сделать? Ниже я описал как бы я хотел сделать, ооочень примитивно написал. Если не сложно, то основываясь на этом примере можете объяснить как это можно реализовать? Легкий пример кода:

js:

    $('#button_1').on('click', function(){
        $.ajax({
            url:'Index.php',
            success:function(data){
                тут вызов функции code php с некоторыми параметрами которые она принимает
            }
        });
    })
function script(a, b, c){
    a = b + c;
}

php:

function code($a, $b, $c){
    $a += $b;
    вызов функции script с некоторыми параметрами
}

Кнопка:

<form method="post" action="">
                    <ul class="buttons_menu">
                        <li>Локации</li>
                        <li ><span ><button id="location_button_1" name="location_button_1">Главные ворота</button></span><em>3 сек.</em></li>
                        <li><span><button id="location_button_2" name="location_button_2" >Торговый квартал</button></span><em>2 сек</em></li>
                        <li><span><button id="location_button_3" name="location_button_3" >Замок</button></span><em>5 сек</em></li>
                        <li><span><button id="location_button_4" name="location_button_4" >Гильдия</button></span><em>4 сек</em></li>
                    </ul>
                        </form>

Ответы (2 шт):

Автор решения: fortavey

Вызвать php код из js невозможно. Вам нужно написать обработчик на сервере, делать ajax запрос и при успешном выполнении возвращать нужные данные в js функцию.

→ Ссылка
Автор решения: Андрей

Кирилл, приветствую!

Вам необходимо в ajax запросе передать необходимые параметры PHP скрипту, в нём произвести необходимые манипуляции и вернуть данные, например в json массиве.

 $.ajax({
        url:'Index.php',
        method: 'get',             /* Метод передачи (post или get) */
        dataType: 'json',          /* Тип данных в ответе (xml, json, script, html). */
        data: {a: 10, b: 20}, 
        success:function(data){
            Здесь вы работаете уже с полученными из скрипта данными
            alert(data.a);
            alert(data.b);
            alert(data.ab);
        }
    });

success:function(data) -> переменная data - это то, что вы вернете в php скрипте в json

Index.php выглядит примерно так:

if($_GET['a'] and $_GET['b']){
    $data['ab'] = $_GET['a'] + $_GET['b'];
    $data['a'] = $_GET['a'];
    $data['b'] = $_GET['b'];
}

$json = json_encode($data);
echo $json;
exit();
→ Ссылка