1

データベース内のファイルの総数を表示しようとしています。明確にするために、人々が自分の車の写真をアップロードできるウェブサイトを持っていて、何枚の写真があるかをリアルタイムで表示したかったとします。これを行う最良の方法は何でしょうか? Javascript、php? 混合?「Total Pictures: x」という数字の div を想定しています。x は、ライブの合計が何であれ、どこにでもあります。MySQL を使用して、Web サイト上のすべてのデータを保存する予定です。これは、何かがサーバーとこれだけ通信することをお勧めしますか? ライブ番号を表示するための名前はありますか? ありがとう!

4

3 に答える 3

1

AngularJS の方法を使用することを考えている場合は、毎秒ポーリングするポーラー サービスを作成できます (/counter.php が json を返すと仮定します)。

app.factory('Poller', function($http, $timeout) {
  var data = { response: {}};
  var poller = function() {
    $http.get('/counter.php').then(function(r) {
      data.response = r.data;
      $timeout(poller, 1000);
    });      
  };
  poller();
  return {
    data: data
  };
});

次に、コントローラー:

app.controller('CounterCtrl', function(Poller, $scope){
    $scope.counter = Poller.data;
});

そして最後にあなたの見解では:

{{counter.response}}

あなたはについてもっと読むことができます$http


于 2013-08-04T14:36:20.503 に答える
0

データベースにクエリを実行し、ファイルのアップロード総数を返す PHP スクリプトを設定します。その後、ページで JavaScript を使用して、指定された間隔で定期的にサーバーを呼び出し、PHP スクリプトからカウント データを取得できます。jQueryとを使用するとGET、次のようなことができます。

jQuery(function($){
  setInterval(function(){
    $.get( '/counter.php', function(fileUploadCount){
      $('#counter').html( fileUploadCount );
    });
  },20000); // 20 seconds
});

あなたのHTMLで:

<p><span id='counter'>xx</span> files have been uploaded so far!</p>

お役に立てれば!

于 2013-08-04T08:37:01.330 に答える