入力からActors.jsonローカルファイルにデータを追加しようとしています。ここでは、ファイル構造です:Ajax POSTを使用してPHPのJSONローカルファイルを保存する
<table>
<tr>
<td>Id:</td>
<td><input type="text" id="ID" /></td>
</tr>
<tr>
<td>First name:</td>
<td><input type="text" id="FirstName" /></td>
</tr>
<tr>
<td>Last name:</td>
<td><input type="text" id="LastName" /></td>
</tr>
<tr>
<td> </td>
<td><input type="button" value="ADD" onclick="AddActor()" /></td>
</tr>
</table>
これは私のaddActor機能である:
function AddActor(){
$.ajax({
url: 'save.php',
method: 'POST',
dataType: 'json',
data: JSON.stringify({'FirstName': $('#FirstName').val(),
'Id': $('#ID').val(),
'LastName': $('#LastName').val()}),
success: function() {alert("Thanks!"); },
error: function() {alert("Error!");}
});
}
しかし、私は保存の内側に配置するのか分からない
[
{
"FirstName": "Ricardo",
"Id": 1,
"LastName": "Darin"
},
{
"FirstName": "Bruce",
"Id": 2,
"LastName": "Willis"
}
]
これが入力されています。 PHPファイルを作成し、いくつかの方法を試みますが、アクタは保存されません。
試し: 'データ:{ファーストネーム:$( "#の姓")のval()、番号:$( "#のID")のval()、。 ...} 'PHP側では、' $ _POST ['FirstName']、$ _POST ['Id'] 'を使って値を取得します。 –
そのすべてが文字化けしているのですか?なぜフォーム全体を.serialize()しないのですか?そして、フォームフィールドの 'id'は、送信に**使われていないことに注意してください。 'name'属性が必要です。 –
@Marc B彼の場合、これはフォームではないので、^^ –