Senden von JSON-Daten über JQuery ajax.post an PHP

Ich sende Daten an eine PHP-Datei über AJAX mit POST. Es hat gut funktioniert, nur Strings zu senden, aber jetzt wollte ich mein JS-Objekt mit JSON senden und es auf PHP-Seite dekodieren.

In der Konsole kann ich sehen, dass meine Daten korrekt übermittelt wurden, aber auf der PHP-Seite gibt json_decode NULL zurück.

Ich habe Folgendes versucht:

this.getAbsence = function()
{
    alert(JSON.stringify(this));
    jQuery.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: "ajax/selectSingle.php?m=getAbsence",
        data: JSON.stringify(this),
        success : function(data){
            alert(data);
        }
    });
}

PHP:

echo $_POST['data'];
echo json_decode($_POST['data']);
echo var_dump(json_decode($_POST['data']));

Und:

this.getAbsence = function()
{
    alert(JSON.stringify(this));
    jQuery.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: "ajax/selectSingle.php?m=getAbsence",
        data: {'Absence' : JSON.stringify(this)},
        success : function(data){
            alert(data);
        }
    });
}

PHP:

echo $_POST['Absence'];
echo json_decode($_POST['Absence']);
echo var_dump(json_decode($_POST['Absence']));

Die Warnung war nur zu überprüfen, ob alles in Ordnung ist ...

Und ja, die übliche Zeichenfolge wurde korrekt wiedergegeben :-)

Antworten auf die Frage(4)

Ihre Antwort auf die Frage