javascript - PHP 保存文本文件并随后在另一个页面上显示它并不每次都有效

标签 javascript php jquery html text

我正在使用 HTML 表单编写一些内容并使用 PHP 将其保存到文本文件中。之后,我想将用户重定向到另一个页面并显示写入的文本文件。有时它会立即起作用,但有时您仍然看到文本文件的旧内容,并且必须重新加载页面才能看到更新的内容。我对 php 的使用还很陌生,所以我不知道如何解决这个问题。

HTML 表单类似于:

<form action="editor.php" method="post">
  <textarea name="textarea" id="textarea" placeholder="Text here ..."></textarea>
  <br><input type="submit" value="Save">
</form>

编辑器.php:

<?php
  $handle = fopen ( "news.txt", "w" );
  fwrite ( $handle, $_POST['textarea'] );
  fclose ( $handle );
  header("Location: index.html");
  exit;
?>

index.html:

<script type="text/javascript" src="js/jquery-1.11.3.min.js"></script>
  <script type="text/javascript">
    $(document).ready(function () {
      $.ajax({
        url : "news.txt",
        dataType: "text",
        success : function (data) {
          $("#text").html(data);
        }
      });
    });
</script>

<div id="text"></div>

有什么想法吗?

最佳答案

您必须欺骗浏览器,以便通过将缓存参数传递给 ajax 调用来强制其下载最后的内容,该调用将查询字符串附加到您的网络浏览器应忽略的文本文件中:

<script type="text/javascript" src="js/jquery-1.11.3.min.js"></script>
  <script type="text/javascript">
    $(document).ready(function () {
      $.ajax({
        url : "news.txt",
        dataType: "text",
        cache : true,
        success : function (data) {
          $("#text").html(data);
        }
      });
    });
</script>

<div id="text"></div>

关于javascript - PHP 保存文本文件并随后在另一个页面上显示它并不每次都有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33153640/

相关文章:

javascript - 使用 Bootstrap 网格系统在 AngularJS 中显示垂直堆叠的数据

javascript - Kendo UI kendoDropDownList 并以编程方式触发选择回调

jquery - 显示 Bootstrap 选项卡。bs.tab 在页面加载时未触发

javascript - 我的闹钟没有播放音频。怎么了?

javascript - 在 Ajax 中发送复选框值

php - 返回指定为逗号分隔值的组中的所有用户

php - 将mysql返回的值存储在php变量中

javascript - 如何使用 jsdoc-toolkit 记录 jQuery-ui 小部件?

javascript - 如果我返回表,检查 Ajax 调用是否为 200 OK 的最佳方法是什么?

javascript - 保存 Promise 解析函数