【问题标题】:How to get integer data from a text file as a Javascript Variable?如何从文本文件中获取整数数据作为 Javascript 变量?
【发布时间】:2016-07-04 23:44:41
【问题描述】:

我找到了一个 php 脚本来计算我的网站下载量。它将下载计数保存为整数类型的 txt 文件。就像 count.txt 只包含“109”一样,意味着文件被下载了 109 次。我想使用本机 javascript 显示下载计数。不是 PHP。只想从 txt 文件中获取整数数据作为变量。有可能吗?如果可能,怎么做?

PHP 脚本是:

<html>
<head>
<meta http-equiv="refresh" content="0;url=1.jpeg">
</head>
<body>

<?php

$fp = fopen("Count.txt", "r");
$count = fread($fp, 1024);
fclose($fp);
$count = $count + 1;
$fp = fopen("Count.txt", "w");
fwrite($fp, $count);
fclose($fp);

?> 

</body>
</html>

【问题讨论】:

  • 我认为你做不到。出于安全原因,JavaScript 不允许从保存在系统上的文件中读取数据。为什么不尝试修改脚本以使用 localStorage 来保存计数,稍后您可以很容易地阅读。
  • onetwo12 是正确的。你不能说 PHP 是一种服务器端语言,而 JavaScript 是一种客户端语言。如果您想显示下载计数,您需要找到或编写一个 PHP 脚本来增加数据库表,或者编写一个 PHP 脚本来读取文件并输出结果。您已经拥有了编写它所需的大部分内容。
  • 如果 .txt 可以通过 URL 访问,您可以执行 XHR 请求来获取它,否则就是 @onetwo12 所说的。
  • 谢谢,我终于做到了

标签: javascript php


【解决方案1】:

您可以使用 AJAX 实现此目的。假设 txt 文件与运行脚本的文件位于同一目录中,您应该可以使用此代码:

$(document).ready(function(){
        $.ajax({
            url: "Count.txt",
            success: function (dataString){
                console.log(dataString);
            }
        });
})

注意:这似乎在 localhost 上不起作用,但我在我的服务器上对其进行了测试并且它起作用了。

【讨论】:

  • 谢谢,我已经使用 XMLhttpRequest 来获取整数数据了。
  • 很高兴你让它工作。本质上是一样的,只是 jquery 的 ajax 版本具有“更友好”的语法。
【解决方案2】:

我已经使用 This JS for XmlHttpRequest 从 count.txt 中获取变量

<h1>Downloaded <span id="displaydlcount"></span> Times!

<script type="text/javascript">
     function lol(){
      var read = new XMLHttpRequest();
      read.open('GET', 'Count.txt', false);
      read.send();
      var displayName = parseInt(read.responseText)
      document.getElementById("displaydlcount").innerHTML = displayName;
      setTimeout("lol()",1000)
      }
      window.onload = lol();
</script>

【讨论】:

    猜你喜欢
    • 2012-06-23
    • 1970-01-01
    • 1970-01-01
    • 2019-12-29
    • 2012-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多