Ich versuche, JSON-Datei auf dem Server auf Knopfdruck zu aktualisieren. Also, wenn ich auf die Schaltfläche #update
Ich sammle Werte aus Eingabefeldern und fügen Sie sie zu JSON-Objekt, dann habe ich dieses JSON-Objekt an controller.php gesendet. Aber wie mit diesem Json-Objekt umzugehen, löschen Sie die alte JSON-Datei und und erstellen Sie eine neue JSON-Datei mit dem JSON-Objekt darin.PHP Handle Json gesendet POST und neu schreiben bestehenden Json mit dem neuen
Hiermit kann der Pfad JSON-Datei heißt: js/currencies.json
JS:
function ajaxPost(obj){
$.ajax({
type: "POST",
dataType: "json",
url: "controller.php",
data: {myData:obj},
contentType: "application/json; charset=utf-8",
success: function(data){
alert('Items added');
},
error: function(e){
console.log(e.message);
}
});
}
$(document).ready(function(){
$('#update').on('click', function(){
var objrates =
{
"EURbuy" : $('#eurbuy').val(),
"EURsell" : $('#eursell').val(),
"USDbuy" : $('#usdbuy').val(),
"USDbuy" : $('#usdbuy').val()
}
ajaxPost(objrates);
});
});
PHP:
<?php
$data[] = $_POST['myData'];
$inp = file_get_contents('js/currencies.json');
$tempArray = json_decode($inp);
array_push($tempArray, $data);
$jsonData = json_encode($tempArray);
file_put_contents('js/currencies.json', $jsonData);
?>
Der Code php withouth Fehler funktioniert, aber die .json Datei wird nicht durch die neuen Werte ersetzt
Sie können dies mit auf den Speicherort auf dem Server direkt schreiben [file_put_contents] [1]: php $ obj = $ _POST ['meineDaten']; file_put_contents ("Pfad/js/currencies.json", $ obj); ?> [1]: http://php.net/manual/en/function.file-put-contents.php – vishwakarma09
so etwas wie das? file_put_contents ("js/currency.json", $ obj); ? –
Welchen Wert hat Ihre $ json-Variable? – madalinivascu