Ich mache ein Registrierungsformular und Daten über Ajax und empfangene Daten über senden $ input = json_decode (file_get_contents ("php: // input"));Ich kann keine JSON-Objektdaten über AJAX senden
Es werden keine Werte auf dem Server empfangen und geben als Antwort Null zurück. Das ist mein PHP code
Bei Vorlage des Formulars diese Funktion aufgerufen wird und alle Eingänge empfangen werden in Formdata
function register() {
var formData={
h_no:$('input[name=h_no]').val(),
h_name:$('input[name=h_name]').val(),
total_rooms:$('input[name=total_rooms]').val(),
total_blocks:$('input[name=total_blocks]').val(),
h_id:$('input[name=h_id]').val(),
pwd:$('input[name=pwd]').val(),
c_pwd:$('input[name=c_pwd]').val(),
}
console.log(formData);
$.ajax({
type:'POST',
url:'../api/hostels/register.php',
dataType: 'json',
data:formData,
success:function(data) {
console.log(data);
}
});
}
Objekt: Hier erhalte ich bin JSON-Daten und Decodierung
Dies ist meine AJAX-Code sie zu verarbeiten und die Rückkehr JSON-Antwort zurück
header("Access-Control-Allow-Origin: *");
header("Content-Type: application/json; charset=UTF-8");
header("Access-Control-Allow-Methods: POST");
header("Access-Control-Max-Age: 3600");
header("Access-Control-Allow-Headers: Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With");
$input = json_decode(file_get_contents("php://input"));
/* application code is written here */
echo json_encode($input);
Ausgang dieses kommt null
Da das Attribut 'dataType: json' __nicht bedeutet, dass Sie json an den Server senden. –
dann, wie kann ich diese JSON auf Server –
Daten an den Server als ein einfaches Array gepostet. Verwenden Sie zum Beispiel '$ _POST'. Und übrigens, Sie haben keine JSON auf Client. Sie haben ein Javascript-Objekt, und es ist nicht Json. –