1

Ajax 4データによってphpファイルに送信される4つの入力があります:
jsonファイルをロードしてからphpで新しいデータを追加するにはどうすればよいですか?

<input type="text" id="name">
<input type="text" id="surname">
<input type="text" id="mobile">
<input type="text" id="email">
<script>
var name = $("#name").val();
var surname = $("#surname").val();
var mobile = $("#mobile").val();
var email = $("#email").val();
$.ajax({type:"POST",
    url:"wjson.php",
    data:"name="+nombre+"&surname="+surname+"&mobile="+mobile+"&email="+email,
    success:function(data) {

    }
});

JSONファイル:(people.json)

{
    "1":
    {
        "Name" : "Jhon",
        "Surname" : "Kenneth",
        "mobile" : 329129293,
        "email" : "jhon@gmail.com"
    },
    "2":
    {
        "Name" : "Thor",
        "Surname" : "zvalk",
        "mobile" : 349229293,
        "email" : "thor@gmail.com"
    }
}

wjson.phpファイル:

<?php
$nane = $_POST['name'];
$surname =$_POST['surname'];
$mobile = $_POST['mobile'];
$email =$_POST['email'];
$str_datos = file_get_contents("people.json")
//add new data to people.json
?>

ちなみにpeople.jsonファイルは私のサーバーにあります

4

1 に答える 1

10

あなたはこのようにそれを行うことができます:

// Loading existing data:
$json = file_get_contents("people.json");
$data = json_decode($json, true);

// Adding new data:
$data[3] = array('Name' => 'Foo', 'Surname' => 'Bar');

// Writing modified data:
file_put_contents('people.json', json_encode($data, JSON_FORCE_OBJECT));

ただし、小さなアイテムを1つか2つ追加するためだけに、おそらく大きなサイズのblobを読み書きすることは、最善の方法ではありません。データセットが増え始めたら、別の解決策を検討してください。

于 2013-01-26T22:19:20.347 に答える