4

phpとjavascriptを使用して、FullcalendarとGoogleカレンダーの間で双方向の同期をプログラムで開発することができました。私のfullcalendarは、MysqlデータベースからのイベントとGoogleカレンダーからのイベントを表示します。私が抱えている問題は、mysqlフルカレンダーイベントがGoogleカレンダーに読み込まれると、フルカレンダーにmysqlイベントが2回表示されることです... 1つはmysqlからのもので、もう1つはGoogleから戻ってきます。mysqlによって作成されたイベントの表示を続行し、googleイベントの表示を中止する必要があります。ただし、mysqlから発生したgoogleイベントのみです。

本質的には、データベースから発生したGoogleカレンダーのイベントを除外する必要がありますが、Googleカレンダーに手動で入力されたGoogleカレンダーのイベントを表示します。

mysqlイベントをgoogleに送信すると、現在、返されたgoogleカレンダーID $ gcal_id = $ createdEvent-> getId()がmysqlに保存されます。私の目的は、google apiコールバックを読み取り、mysqlに保存したIDと一致するgCal$uidを除外することです。

googleapiコールバックで見つかったgCal$uid値にアクセスし、それらをデータベースから取得したidの配列と比較する方法がわかりません。

アイデアやコードスニペットをいただければ幸いです。

ありがとうございました。

4

2 に答える 2

3

別の角度から問題を攻撃し、フルカレンダーに重複するエントリが表示される問題を解決することができました。カレンダーが各イベントを読み込むときに、イベントID(@googleを除く)を、データベースのFullCalendarの「eventAfterRender」に保存したgcalIDと比較します。一致するものが見つかった場合は、FullCalendarの「removeEvents」を使用して、重複するイベントをカレンダーから削除します。

于 2012-06-21T19:41:56.830 に答える
0

結果に一貫性がありません。プロセスは連続して数回機能し、その後突然機能を停止します。PHPのドキュメントが不足しているため困難ですが、まだトラブルシューティングを行っています。

とにかく、GoogleカレンダーからFullCalendarに着信するのは、Googleカレンダーに発信するのに比べて簡単です。

着信の場合、パブリックまたはプライベートXMLフィードを取得する方法についてユーザーに指示を与える必要があります。パブリックXMLを取得する手順については、こちらをご覧 くださいhttp://arshaw.com/fullcalendar/docs/google_calendar/

プライベートXMLを取得するには、カレンダーを公開せずに、[プライベート]セクションの[XML]ボタンをクリックします。

他にもいくつかの手順がありますが、それらはすべて、提供されているリンクで詳しく説明されています。

すべてがうまくいったら、グーグルへの発信同期に関するより詳細な情報を提供します

ところで-なぜあなたは私にプライベートメッセージを送ることができないのですか。スタックオーバーフローの設定で変更する必要があるものはありますか?

于 2012-06-28T15:34:55.137 に答える