ファイル
index.php
<form name="postform" action="post.php" method="post" enctype="multipart/form-data">
<table class="postarea" id="postarea">
<tbody>
<tr> <td class="postblock">Date:</td><td><input type="text" name="startDate"></td></tr>
<tr> <td class="postblock">Title:</td><td><input type="text" name="headline"></td></tr>
<tr> <td class="postblock">Article:</td><td><textarea id="text" rows="5" cols="30" type="text" name="text"></textarea> </td> </tr>
<tr> <td class="assetblock">Image address:</td><td><input type="text" name="media"></td></tr>
<tr> <td class="assetblock">Image caption:</td><td><input type="text" name="caption"></td></tr>
<tr> <td class="postblock"></td><td> <input type="submit" value="Submit Entry"> </td> </tr>
</tbody>
</table>
</form>
</form>
post.php
<?php
// check if a form was submitted
if( !empty( $_POST ) ){
// convert form data to json format
$json = json_encode( $_POST );
// make sure there were no problems
//if( json_last_error() != JSON_ERROR_NONE ){
//exit; // do your error handling here instead of exiting
// }
$file = 'entries.json';
// write to file
// note: _server_ path, NOT "web address (url)"!
file_put_contents( $file, $json, FILE_APPEND);
}
質問
ユーザーがサイトにエントリを追加できるフォームを作成しようとしています。エントリはJSONファイルに保存されます。JSONフォームに送信し、次のようにフォーマットされたフォームを作成しました。
{"startDate":"example",
"headline":"example",
"text":"example",
"media":"example",
"caption":"example"}
メディアとキャプションは、画像、ビデオ、またはその他のマルチメディアに関連しています。以下の例のように、別のオブジェクトとして保存する必要があります。
{"startDate":"example",
"headline":"example",
"text":"example",
"asset" :{"media":"example",
"caption":"example"}
}