2012-09-04 19 views
10

私はMySQLデータベースにデータをオンラインで保存するWebアプリケーションを持っています。また、PHPコードを使用してデータを取得し、サーバー上で計算を実行し、結果をユーザーに返します。オフラインで動作するPHP mysqlアプリケーションを構築する方法

データ名前、説明、価格、付加価値税(VAT)、データベースから読み込まれ、サーバー側で操作される時間単位の料金です。

多くの場合、クライアントはインターネット接続が不十分であるか利用できない環境で動作します。この場合、クライアントはオフラインで作業することができます:新しい名前、説明、価格を入力し、最後のVATを使用して計算を実行します。次に、接続が利用可能になるとすぐにすべてのデータを同期させます。

問題は、これを達成するための最善の方法または技術が何であるかわからないということです。心配しないで、私は私のためにコードを書くことを求めていません。そのようなシステムを構築する正しい方法は何かを私に説明できますか?

オンラインのMySQLとPHPコードをローカルで使用する簡単な方法はありますか?

必要なデータをローカルファイルに保存し、JavaScriptで計算を再構築し、ローカルで実行し、データベースが利用可能であればデータを同期する必要があります。

2つのMySQLデータベースを使用する必要がありますか?ローカルで1つ、オンラインで1つのデータを使用できますか?はいの場合、どの操作(言語)を使用してこの操作を実行する必要がありますか?

可能であれば、私は過去の同様のプロジェクトで働いていたPHPコーディング担当者からの回答をお待ちしており、フレームワークの構造と使用する技術について詳しく知ることができます。私がこの書面による申請方法には新しいことを覚えておいてください。もし私が6歳であれ愚かであれば、私は数分を余裕で説明することができれば分かりますか?

本当にありがとう助けと提案。

チャオ、

ドナート

+0

質問を再タグ付けすることをお勧めします。これをブラウザベースにしたい場合は、必然的にjavascriptを使用し、サーバ側の技術(PHP、mysqlなど)は実際にはありません関連性があります。厳密にはWebブラウザに限定されていないのであれば、CouchDB(http://couchdb.apache.org/)などを見ることができます。これは、オフラインでの使用と再同期のために設計されたドキュメントデータベースです。 –

答えて

12

行くための3つの方法基本的にあります。

バージョン1:「オールドスクールは、 「:PHP-GTK +とbcompilerとあなたはまだ行っていない場合は、

  • 最初は、あなたのプレゼンテーション層(HTML、テンプレートエンジン、からビジネスロジックを分離する必要があります...)とデータベース層
  • データベース層を変更して、別のDB(ローカルSQliteが頭に浮かぶ)と一緒に暮らせるようにしてください。
  • 最後にPHP-Gtk +を使って新しいUIとパックを作成しますbcompilerと

を持つすべてのこのバージョン2: "標準": "ダブルクリック可能なWebサーバ" を作成するためにServer2Go、WampOnCDや友人にあなたとあなたのサーバーを取る

  • ルック(Z-WAMPで開始)
  • あなたはまだバージョン3

バージョン1のように、あなたのDB層を適応させる必要がある

  • : "ウェブ2.xの":ブラウザ

    • へのサーバーから移動アプリケーション、アプリケーションのロジックを移動しますサーバー側(PHP)からクライアント側(JS)
    • サーバー部分(PHP)のみデータアクセスまたは同期層にする
    • HTML5のオフライン機能を使用して、データアクセスをローカルオンラインの場合はオフラインで再同期する場合のデータ

    どちらが最適ですか?

    これはあなたの持つものと必要なものによって異なります。あなたのビジネスロジックの大半がPHPにあれば、それをブラウザに移すのは高価なものになるかもしれません。これはまったく新しいクラスのセキュリティ悪夢を生むことに注意してください。私は個人的にはこの方法で移植を移植することをお勧めしませんが、バッキングDBがそれほど大きくないなら、私は新しいアプリのためにそれをお勧めします。

    あなたのPHPビジネスロジックを維持することを選択した場合、1と2の間の欲求は、アプリのUIの量を不安定にすることがあります。CRUDフォームがごくわずかな場合は、それは間違いなく最も携帯性があります(あなたと一緒に持っていく意味で)。

  • +0

    オプション3については何ですか? 2014年、バージョン3ソリューションでアプリケーションを開発するのに安全ですか? 私は小規模の授業料クラスの学生管理のためのシステムを開発するよう依頼しました。私はWebベースまたはモバイル(Android)の開発が非常に適していると思っています。スリランカのように、インターネットがなくてもシステムが動作しなければならないため、インターネットがダウンすることがあります。 ありがとう –

    2

    は、HTML5のapplication cacheを見てください。それはそれが何のためにあるかほとんどです。このためにはplentyoftutorialsがありますので、周りを見て、あなたのニーズに合っているかどうかを確認してください。

    1

    私は船のための同様のシステムで働いています。インターネットは海の真ん中で高価ですので、ローカルのWebサーバーに電子メールによるデータベース同期をインストールしています。

    経験のない人は、システムまたは更新システムをインストールすることができますので、我々はまた、簡単な.exeのパッケージを作成している...

    +0

    あなたは.exeを共有できますか? – Bassem

    +0

    申し訳ありません、それを共有することはできません –

    関連する問題