簡體   English   中英

如何獲得一個按鈕被單擊的次數的變量,將其在線存儲然后在以后訪問?

[英]How do I get a variable of the number of times a button has been clicked, store it online and then access it later?

我試圖有一個可以單擊的按鈕,然后將顯示它被單擊的次數。 我希望將該變量(稱為x)在線存儲,以便如果一個人單擊按鈕5次,然后另一個人隨后單擊它,則每個屏幕另外3次將x顯示為8。我嘗試了本地存儲,但是僅將變量存儲在瀏覽器上。 我一直在做一些研究,似乎我必須將x存儲在文件中,然后使用XMLHttpRequest訪問它。 我是Java語言的新手,不確定如何執行此操作。 有人可以用實現此目的的代碼作為響應,並說明存儲該變量將要做什么嗎?

對於Javascript方面,您可以使用jQuery使事情變得簡單一些

 $(document).ready(function() { /* perform AJAX XMLHttpRequest */ $.get("/click_count.php", function(data) { /* write the response into the HTML document */ $("#click_count").text(data); }); }); function save_click() { /* perform AJAX XMLHttpRequest */ $.post("/save_click.php", function(data) { /* write the result to the HTML document */ $("#click_count").text(data); }); } 
  <!-- include jQuery library --> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <html> <body> <button onClick="save_click();">click me!</button> Button has been clicked: <span id="click_count">0</span> times! </body> </html> 

最后,您需要有兩個利用服務器端技術的文件(或一個做兩件事的文件)。

服務器端代碼的工作方式如下:

點擊次數存儲在名為click_count.data的文件中

每當有人訪問文件click_count.php時 ,它只會讀取click_count.data文件並發送其中的任何內容作為響應。

然后,還有一個名為save_click.php的文件,該文件接收click_count.data中的內容 ,然后將其增加一個,然后再發送回去。

Javascript AJAX請求使用這兩個文件將數據保存在服務器上,而不是基於每個客戶端。

對於服務器端,我選擇使用PHP

檔案: click_count.php

 <?php 

    /* print out the contents of the file 'click_count.data' */
    print_r(file_get_contents("click_count.data"));
  ?>

檔案: save_click.php

 <?php  

   /* grab the current click count from click_count.data */
   $click_count = intval(file_get_contents("click_count.data"));

   /* increase it by 1 */
   $click_count++;

   /* write the new value into the file */
   file_put_contents("click_count.data", $click_count);

   /* print out new click count */
   print_r($click_count);

?>

上一個文件: click_count.data

 0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM