手に入れることができるすべての例を試してみましたが、ホストのJSONファイルにJSONデータを単純に保存することはできません。できる限りシンプルな保存方法から始めたいので、開始する場所があります。
私が手に入れたものは次のとおりです基本的に私はボタンを持っていますindex.htmlクリックするとデータがgeneral.jsonファイルに保存されます(index.htmlと同じ場所)。
<button id="savebtn">Save</button>
myscript.jsのidセレクターを使用して、これを行います。
$('#savebtn').click(function() {
var saveit = $('#calendar').fullCalendar( 'clientEvents');
var eventsholded = [];
$.each(saveit, function(index,value) {
var event = new Object();
event.id = value.id;
event.start = value.start;
event.end = value.end;
event.title = value.title;
event.allDay = value.allDay
eventsholded.Push(event);
});
$.ajax
({
type: "GET",
dataType : 'json',
async: false,
url: 'general.json',
data: JSON.stringify(eventsholded),
success: function () {alert("Thanks!"); },
failure: function() {alert("Error!");}
});
ご覧のように、fullcalendarのイベントを保存します。この点まではうまく機能するため、これはあまり意味がありません。 画面JSON.stringify(eventsholded)でアラートを出す場合これが表示されます:
[{"start":"2014-01-07T08:30:00.000Z","end":"2014-01-07T12:30:00.000Z","title":"Pumukli Pista","allDay":false},{"start":"2014-01-11T13:30:00.000Z","end":"2014-01-11T18:30:00.000Z","title":"Fanic Catalin","allDay":false}]
今これはサーバーに簡単、迅速、おそらく安全ではないが非常に簡単な方法で保存したいものですこれがどのように機能するかを理解できるようになりました。 jsonファイル。
$.ajax
partは、上記のコードでは何もしません。 「エラー」も警告しません。残りのコードは期待どおりに機能します。
セキュリティは今では重要ではありません。仕組みを学びたいだけです。
完全な例のあるヘルプまたは有用なリンクに感謝します。ありがとう!
$.ajax
だけではjsonファイルは保存されません。url
プロパティをサーバー側スクリプト、つまりhttp://your.Host/save_json.php
に転送する必要があります。これはgeneral.json
を作成し、その上に出力を書き込みます。何かのようなもの:
PHP:
<?php
$myFile = "general.json";
$fh = fopen($myFile, 'w') or die("can't open file");
$stringData = $_GET["data"];
fwrite($fh, $stringData);
fclose($fh)
?>
data
呼び出しのajax
プロパティをdata: {data: JSON.stringify(eventsholded)}
に変更して、GET変数にPHPから取得できる適切な名前を付ける必要もあります。
[〜#〜] jquery [〜#〜]
$.ajax
({
type: "GET",
dataType : 'json',
async: false,
url: 'http://your.Host/save_json.php',
data: { data: JSON.stringify(eventsholded) },
success: function () {alert("Thanks!"); },
failure: function() {alert("Error!");}
});