Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   не отправляются данные через ajax (https://javascript.ru/forum/misc/80890-ne-otpravlyayutsya-dannye-cherez-ajax.html)

Галина123 21.08.2020 17:40

не отправляются данные через ajax
 
подскажите, пожалуйста, почему при передаче данных с помощью ajax на PHP приходит пустой массив
function ajax(url, method, functionName, dataArray) {
    let xhttp = new XMLHttpRequest();
	xhttp.responseType ="json";
    xhttp.open(method, url, true);
	
    xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xhttp.send(dataArray);

    xhttp.onreadystatechange = function () {
        if (this.readyState == 4 && this.status == 200) {
            functionName(this);
        }
    }
}

function requestData(dataArr) {
    let out = '';
    for (let key in dataArr) {
        out += `${key}=${dataArr[key]}&`;
    }
    console.log(out);
    return out;
}
ajax('data.php','POST', check, data);
function check(){//
	console.log(this);
}
let data = {
    "name": "Sasha",
    "age": 22
}

voraa 21.08.2020 18:35

Как минимум, надо так
let data = {
    "name": "Sasha",
    "age": 22
}
ajax('data.php','POST', check, data);


Далее
function check(){//
    console.log(this);
}

Как, по вашему, чему будет равен this? Либо window, либо undefined (в зависимости от "use strict")

Галина123 21.08.2020 18:46

не помогает. данные отправляются вроде, но ни через var_dump, ни через print_r не выводятся


Часовой пояс GMT +3, время: 23:54.