PHP - простой ajax для отправки запроса на сервер - PullRequest
0 голосов
/ 24 мая 2018

Простите мое невежество, но я не могу понять, как сделать простой запрос ajax в PHP.Я понимаю принципы взаимодействия клиент-сервер на других языках / библиотеках, но PHP почему-то ускользает от меня.

Вот что я пытаюсь сделать:

Отправить запросотсюда, используя jQuery:

$(document).on('click', '#uploadAll', function() {
    $.ajax({
        url: '/ExamplePhpFile.php',
        type: "POST",
        data: {query:'INSERT INTO Assets SELECT * FROM Uploads'},
        success: function(respose){
            console.log("POST successful");
        }
    });
});

Получить строку запроса в атрибуте данных здесь:

if(isset($_POST{'data'})) {
    $query = $_POST['data'];
    foreach($query as $value) {
        echo 'here is your crap: '.$value;
    }
}

Тогда я буду использовать переданный запросв другой функции для запуска действия на сервере (эта часть работает).Очевидно, у меня что-то не так, поскольку бит $ _ POST ['data'] не возвращает значение.А мониторинг $ _ POST сам по себе просто дает мне объект массива (JSON_encode () тоже не справляется с этим)

Может кто-нибудь предложить мне руководство и сэкономит мне немного сил??:)

Ответы [ 2 ]

0 голосов
/ 24 мая 2018

Вам необходимо отправить действительный объект JSON обратно

if(isset($_POST['query'])) {
    $query = $_POST['query'];
    $data = [];
    $x = 0;
    foreach($query as $value) {
        $data[$x] = 'here is your crap: '.$value;
        $x++;
    }
    print(json_encode($data));
}
0 голосов
/ 24 мая 2018

Вы передаете свой ключ данных как query и используете $_POST['data'], поэтому, как он будет работать, замените как $_POST['data'] на $_POST['query'], он будет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...