/ / json ऑब्जेक्ट को jjascript और php का उपयोग कर एक json ऑब्जेक्ट लिखना - php, javascript, json

json फ़ाइल को json वस्तु लेखन जावास्क्रिप्ट और php-php, जावास्क्रिप्ट, json का उपयोग

मुझे जावास्क्रिप्ट और php का उपयोग करके .json फ़ाइल में एक json ऑब्जेक्ट लिखने की आवश्यकता है। Json ऑब्जेक्ट मानों को सही तरीके से संग्रहित करता हुआ प्रतीत होता है, लेकिन php फ़ाइल doesn 't लगता है कि कुछ भी नहीं चलता है।

धन्यवाद।

मेरा जावास्क्रिप्ट फ़ंक्शन, जिसे एक बटन क्लिक पर कहा जाता है:

    function save_crime()
{
//json object, v1, v2, v3 etc are variables whose values are set in a different function
var jsonObject = { "crime" : {  "violence" : {  "violence1" : v1,
"violence2" : v2,
"violence3" : v3
},

"burglary" : {  "burglary1" : b1,
"burglary2" : b2
},

"robbery" :  {  "robbery1" : r1,
"robbery2" : r2
},

"criminal" : {  "criminal1" : c1,
"criminal2" : c2,
"criminal3" : c3
}
}
}



//jQuery to post json object to json.php for writing to json file
$.ajax({
type : "POST",
url : "json.php",
dataType : "json",
data : {
json : JSON.stringify(jsonObject)
}
});

}

.json फ़ाइल लिखने के लिए php फ़ाइल:

<?php

$json = $_POST["json"];
$info = json_encode($json);

$file = "crimes.json";
$handle = fopen($file, "w");
fwrite($handle, $info);
fclose($handle);

?>

उत्तर:

उत्तर № 1 के लिए 1

आप लिख रहे हैं JSON स्ट्रिंग एक फ़ाइल के लिए, आपको जेएस भाग से पहले से ही एक स्ट्रिंग के रूप में डिकोड करने की आवश्यकता नहीं है (JSON.stringify(jsonObject))।

बस सीधे लिखो।

file_put_contents("crimes.json",  $_POST["json"]);

सर्वर से प्रतिक्रिया पाने के लिए बेहतर है ताकि आपको पता हो कि कार्रवाई ठीक से की गई है। उपयोग $.post के बजाय आशुलिपि $.ajax.

$.post(
"json.php",
{
json : JSON.stringify(jsonObject)
},
function (data, textStatus, jqXHR){
}
);