• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ボタンのクリック数を合計保存するPHPプログラム)

ボタンのクリック数をカウントするPHPプログラム

このQ&Aのポイント
  • サイト訪問者が任意でボタンをクリックしてくれた数をカウントし、合計にするPHPプログラムを教えてください。
  • ボタンのクリック数をカウントし、合計を表示するPHPプログラムの書き方を教えてください。
  • ボタンをクリックしたらクリック回数をカウントし、合計を表示するPHPのスクリプトについて教えてください。

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

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

こんにちは。 ボタンをクリックしたらを完全に見落としてました。 リロード処理等も入れなくてはいけなくなってきますのでカウントするのは別ファイルにしたほうが良いと思います。 count.php>> <?php $file = "./number.php"; $fp = fopen ( $file,"r" ); $now = fgets ( $fp ); fclose ( $fp ); $now ++; $fp = fopen ( $file, "w" ); fputs ( $fp, $now ); fclose ( $fp ); // "/test/index.php"は自分の環境に合わせる header ( "Location: http://" . $_SERVER['HTTP_HOST'] . "/test/index.php" ); exit; ?> >>count.php index.php>> <html> <body> <form action="count.php" method="get"> <input type="submit" value="クリック!<?php readfile("./number.php") ?>"> </form> </body> >>index.php 前回同様ロック処理やセキュリティの考慮は皆無ですので実運用するにはもうちょっと手を加えないといけませんがこんな感じで作ればよいと思います。 上記動作はボタンを押すとcount.phpへ飛び、カウント処理を実行後またボタンの表示されているページへ戻ります。 戻ってくるとボタンに表示されているカウントが加算されます。 更新ボタンを押した場合はカウントは変わりません。

chile5583
質問者

お礼

ありがとうございました。 長く教えてgooにログインできず、お返事が大変おそくなってしまい失礼いたしました。

その他の回答 (1)

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

こんにちは。 単純(ファイルロックやセキュリティー等考慮せず)に作るのであれば以下のような感じで作れば動くと思います。 動きとしてはnumber.phpファイルを読み込んで加算し、その値を書き込むという動きです。 <?php $file = "./number.php"; $fp = fopen ( $file,"r" ); $now = fgets ( $fp ); fclose ( $fp ); $now ++; $fp = fopen ( $file, "w" ); fputs ( $fp, $now ); fclose ( $fp); ?> <html> <body> <form action="index.php" method="get"> <input type="submit" value="クリック"> 合計<input type="text" name="number" value="<?= $now ?>"> </form> </body> </html>

chile5583
質問者

お礼

こんばんは、こんな初歩の初心者の質問にお答えくださってありがとうございます。 教えていただいたコードで確かにカウントし、カウントした数字は別ファイルに上書きされるようになりました! (<input type="text" name="number" value="<?= $now ?>"> この部分がそのままでは動かなかったので、この部分はincludeでnumber.phpの内容を強制的に表示させました) ただ、この状態で http://localhost/index.php として、index.phpに上記のタグを記入してブラウザでこのページを表示すると、ブラウザの表示やブラウザの更新ボタンをクリックした時も数をカウントしてしまいました。 できればブラウザの表示回数は計算に含めずに、ボタンをクリックした数だけをクリックできると嬉しいなと思いましたが、教えていただいた計算式さえ自分ではPHPがわからなくて、いずれにせよ、「PHP頑張ろう!!」とすごく思いました。 本当にありがとうございます!