1日ごとにクリック数をカウントする方法

このQ&Aのポイント
  • クリック数を1日ごとにカウントする方法を教えてください。
  • 画像やボタンなどをクリックした時に、1日ごとにその数を表示する方法について教えてください。
  • カウント数が毎日00:00になったらリフレッシュされる表示方法について教えてください。
回答を見る
  • ベストアンサー

クリック数を1日ごとにカウントしたいです。

どうか教えてください。 画像やボタンなどをクリックした時に、その(トータルの累計の)数を画像やボタンの横に表示する方法については、次のように「教えて!goo」にあります。 http://okwave.jp/qa/q6858457.html カウントサンプルページ http://olo.sakura.ne.jp/test/test.html これを累計の数ではなく、1日ごとにカウントするには、以下のコードをどのように変えたらよいでしょうか? 例えば、3月3日00:00~24:00の24時間以内にクリックされた数を表示し、3月4日00:00になったら、表示される数が「0」にもどるような場合を想定しています。 言い換えれば、(例えば)毎日00:00になったらカウント数がリフレッシュされるような表示方法です。 // カウンター読込み(表示) function load(n){  var uri = "count/count0" + n + ".txt?r=" + Math.floor(Math.random() * 10000);  jQuery("#btn0" + n + " span").load(uri); } // 初期表示+イベント設定 for(var n=0; ++n<3;){  load(n);  jQuery("#btn0" + n + " p").click(   (function(m){    return function(){     jQuery.post("count/post.php", {"param1":"count0" + m + ".txt"}, function(){load(m);});    };   })(n)  ); }

質問者が選んだベストアンサー

  • ベストアンサー
  • LancerVII
  • ベストアンサー率51% (1060/2054)
回答No.1

こんにちは。 どちらかというとJavaScript側でどうのこうのするのではなく、サーバ側の処理(post.php)で行う話になります。 また、表示だけ0にリセットするのか、記録については毎日取っておくのか、いろいろ要件が不確定な部分があります。 通常このようなシステムを作る場合、JavaScript側は取得してくるだけでサーバ側で時間等を制御し、値を返すように作ります。 もし自分が作るなら、0:00にcronやタスク等で起動し、日付ごとのデータをローテートするように作っておきます。 >これを累計の数ではなく、1日ごとにカウントするには、以下のコードをどのように変えたらよいでしょうか? 上で述べたように、JavaScriptを変更するだけでは実装は難しいです。

student755
質問者

お礼

ありがとうございます。 >JavaScriptを変更するだけでは実装は難しい 納得できました。 ありがとうございます。

関連するQ&A

  • クリックカウンターの挙動がおかしい

    jQueryとPHPを使い、画面遷移せずに回すクリックカウンター http://1bit.mobi/20110112164331.html こちらのカウンターを設置してみたのですが少し動作がおかしいです。 http://olo.sakura.ne.jp/test/test1.html 連続でクリックすると古い数字が出た後に正しい数字が表示されます。 何故か2回数字が更新されてしまうのです。 ブラウザにより挙動が異なりIE,Firefox,Chromeでは上記のように iPodtouch,3DSのブラウザでは正常に動作しました。 解決策はありますでしょうか?よろしくお願いします。 jQuery(document).ready(function(){ //初期時のカウンターファイル読み込み //ランダムな数字を生成し、パラメータとして付けることで、ユニークな状態にする。 var randnum1 = Math.floor( Math.random() * 10000 ); jQuery("#btn01 span").load("./count01.txt?r=" + randnum1); //カウンター追加後の読み込み関数 function func01(data){ var randnum1 = Math.floor( Math.random() * 10000 ); jQuery("#btn01 span").load("./count01.txt?r=" + randnum1); } //カウンター+1追加処理 jQuery('#btn01 p').click(function(e){ //「param1」変数の値と書き込みファイル名の情報をもってpost.phpへ。その後、関数func01を実行 jQuery.post("post.php" , {"param1": 'count01.txt'} , func01); jQuery("#btn01 span").load("./count01.txt"); }); });

  • コードをスマートにさせたい。

    jQueryとPHPを使い、画面遷移せずに回すクリックカウンター http://1bit.mobi/20110112164331.html 現在、上記のカウンターを2つ並べています。 この01,02の数字を変数にして指定回数ループで回してコードがスッキリさせたいのですが、 うまくいきませんでした。どのように修正したらよいでしょうか? http://olo.sakura.ne.jp/test/test.html jQuery(document).ready(function(){ //初期時のカウンターファイル読み込み var randnum1 = Math.floor( Math.random() * 10000 ); jQuery("#btn01 span").load("count/count01.txt?r=" + randnum1); jQuery("#btn02 span").load("count/count02.txt?r=" + randnum1); //カウンター追加後の読み込み関数 function func01(data){ var randnum1 = Math.floor( Math.random() * 10000 ); jQuery("#btn01 span").load("count/count01.txt?r=" + randnum1); } function func02(data){ var randnum1 = Math.floor( Math.random() * 10000 ); jQuery("#btn02 span").load("count/count02.txt?r=" + randnum1); } //カウンター+1追加処理 jQuery('#btn01 p').click(function(e){ //「param1」変数の値と書き込みファイル名の情報をもってpost.phpへ。その後、関数func01を実行 jQuery.post("count/post.php" , {"param1": 'count01.txt'} , func01); }); jQuery('#btn02 p').click(function(e){ //「param1」変数の値と書き込みファイル名の情報をもってpost.phpへ。その後、関数func02を実行 jQuery.post("count/post.php" , {"param1": 'count02.txt'} , func02); }); });

  • ワンクリックしかできないクリックカウンター

    現在、ログイン式掲示板を作成中です。 その掲示板で、投稿に対してログイン中のみ、一人一回しかクリックできない「いいねボタン」のようなものを設置したいのですが、(mixiつぶやきのようなものです)どのようにすればよいのかわからずこまっております。 ネットにのっているものを参考にさせていただいて、クリック数をカウントする機能は、jQueryとjavascriptとphpでできたのですが、一回しかクリックできないようにするにはどうすればよいかわからないので、教えていただけませんか? どうぞよろしくお願いいたします。 javascript jQuery(document).ready(function(){ //初期時のカウンターファイル読み込み //同じファイル名だと正常に読み込めないので、ランダムな数字を生成し、パラメータとして付けることで、ユニークな状態にしている。 var randnum1 = Math.floor( Math.random() * 10000 ); jQuery("#btn01 span").load("./count01.txt?r=" + randnum1); //カウンター追加後の読み込み関数 function func01(data){ var randnum1 = Math.floor( Math.random() * 10000 ); jQuery("#btn01 span").load("./count01.txt?r=" + randnum1); } //カウンター+1追加処理 jQuery('#btn01 p').click(function(e){ //「param1」変数の値と書き込みファイル名の情報をもってpost.phpへ。その後、関数func01を実行 jQuery.post("post.php" , {"param1": 'count01.txt'} , func01); jQuery("#btn01 span").load("./count01.txt"); }); }); index.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>カウントサンプル</title> <script type="text/javascript" src="js/jquery-1.4.2.min.js"></script> <script type="text/javascript" src="js/count.js"></script> </head> <body> <div id="btn01"><p><a href="javascript:void(0);">いいね!</a></p><span></span></div> </body> </html> post.php <?php $file = $_REQUEST['param1']; $c = file_get_contents($file); $c++; $fp = fopen($file, "r+"); @fputs($fp,$c); fclose($fp);

    • ベストアンサー
    • PHP
  • jQueryで文字数カウンタ(複数対応)

    jQueryのプラグインを作成中です。 指定したテキストフォーム、テキストエリア内の文字数をカウントして、 指定場所に文字数を表示させるというものです。 下記のように記述し、 (function(jQuery) { jQuery.fn.textCount = function(options) { //キーボードが押された時にカウント jQuery(this).live("change keyup",function(){ var count = jQuery(this).val().length; var disp_area = jQuery(this).attr("id"); jQuery("."+disp_area).html(count+"文字"); }); return this; }; })(jQuery); jQuery(".counter").txtCount(); とHTML内で宣言しました。 <textarea id="sample">ここの文字数が</textarea> <div class="sample">ここに表示</div> と、ここまではうまくいきました。 が、テキストエリアの数が複数個あり、数が変動するため、IDを配列にしたいと思っています。 そこで、 <textarea id="sample[1]">個々の文字が</textarea> <div class="sample[1]">ここに表示されない</div> のように記述しました。 すると文字数が表示されなくなってしまいました。 classやidに配列指定はできないのでしょうか。 また、この場合はどのように宣言するのが正しいのでしょうか。

  • jQueryのclickイベントハンドラ

    最近jQueryを勉強中でして、練習の意味で自分で以下のようなページを作ってみました。 【ページの内容】 犬、猫、鳥の画像ボタンを配置して、クリックすると各ボタンのalt属性をアラート表示する 【実際のhtml】 <div class="header"> <ul class="menu"> <li><a href="index.html" id="btn1"><img src="dog.png" alt="Dog"></a></li> <li><a href="index.html" id="btn2"><img src="cat.png" alt="Cat"></a></li> <li><a href="index.html" id="btn3"><img src="bird.png" alt="Bird"></a></li> </ul> </div> 【実際のscript】 $(function(){ var btn1 = $('#btn1'); var photo1 = btn1.find('img'); var name1 = photo1.attr('alt'); btn1.click(function(){ alert(name1); }); var btn2 = $('#btn2'); var photo2 = btn2.find('img'); var name2 = photo2.attr('alt'); btn2.click(function(){ alert(name2); }); var btn3 = $('#btn3'); var photo3 = btn3.find('img'); var name3 = photo3.attr('alt'); btn3.click(function(){ alert(name3); }); }); 上記で一応やりたいことは再現はできるのですが、scriptが冗長なのでもっと短くしたいです。 しかしどんなスクリプトにすればよいかわかりません。 宜しければアドバイスお願いいたします。

  • jqueryについて質問です。

    jqueryについて質問です。 ----------------------------------------------------------- test.js $(window).load(function() { $("body").load("a.php"); $("#btn").click(function() { alert();///動作しない } }); ----------------------------------------------------------- a.html <input type="button" id="btn" name="btn" value="send"> ----------------------------------------------------------- load先のidのクリックを監視するにはどうしたらいいのでしょうか?

  • リロードするまでの間のクリック数をカウントして表示

    重ね重ね質問すいません。 先ほど、『リンクボタンからインラインフレーム内にクリックするたび順番に別のサイトに飛ばすようにするにはどうしたらよいでしょうか?※ランダムではなくあらかじめ決めた順番で飛ばしたいです できるならソースを教えてください』。 という質問をして↓の答えを頂いたのですが、更にこれにリロードするまでの間のボタンのクリック数をカウントしてリアルタイムで表示したいのですがなにを付け加えたらよいでしょうか?※リロード行われたらリセットでお願いします <script> var urls=["ttp://okwave.jp/","ttp://oshiete.goo.ne.jp","ttp://qanda.rakuten.ne.jp"]; var idx=0; function clickFunc(){ idx=idx<urls.length -1?idx+1:0; document.getElementById("hoge").src=urls[idx]; } window.onload=function(){ document.getElementById("hoge").src=urls[0]; } </script> <input type="button" onclick="clickFunc()" value="go"> <hr> <iframe src="" id="hoge" width=80% height=500px;></iframe>

  • ランダムリンクのクリック数カウント方法

    ブログ内でお遊び的に占いの様な形でランダムにリンクする下記コードを使用しております。 <a href="http://123123123.com/" onclick="var urls=['http://11111.com/','http://22222.com/','http://33333.com/','http://44444.com/','http://55555.com/'];window.open().location.href=urls[Math.floor(Math.random()*urls.length)];return false">ランダムリンク</a> このリンクのクリック数をアナリティクスでイベントカテゴリ等で計測したいのですが、方法が分かりません。 全体のクリック数でも、ランダムの個別のクリック数でもどちらでもかまいません。 ご教示願います。

  • 日ごとのクリックカウンターはありませんか?

    自分のホームページに掲載したリンクをクリックした人が何人いるか把握できるクリックカウンターを探しています。 内容としては、 ・累計ではなく、日ごとのクリック数が集計される。 ・同一人による複数クリックは1クリックとしてカウントされる。 ・できれば無料。 というものがあるといいのですが。

    • 締切済み
    • CGI
  • Google+のカウント数を取得【jQuery】

    ソーシャルボタンのカウント数取得についての質問です。 http://unguis.cre8or.jp/web/2026 Google+以外のSNSボタンのカウント数は上記URLを参考に設置できたのですが、 Google+だけが分かりません。 下記URLを参考にいろいろ試してみたのですが、行き止まってしまいました。 http://stackoverflow.com/questions/13424640/getting-google-subscription-count-with-jquery http://stackoverflow.com/questions/8929177/getting-counts-for-twitter-links-facebook-likes-and-google-1-with-jquery-and-a phpでも出来るようですが、 jQueryでどのようにするか理解したいのでよろしくお願い致します。