如何Echo更新PHP中的变量

时间:2016-10-10 20:13:32

标签: javascript php html ajax html5

感谢您试着帮我解决问题!

我的问题是,我希望使用PHP在我的页面上显示一个变量。此变量每秒更新一次。我希望在变量更改时在页面上更新。 我尝试使用while循环,但这只是连续打印变量。我会警告你,我不是很精通PHP,你可能不得不向我解释你的答案,很多。对不起,我没有包含任何代码示例..我真的不认为这个问题需要它。如果您希望我提供一些样品,我会的。感谢您考虑回答我的问题! :)

2 个答案:

答案 0 :(得分:1)

您尝试使用PHP的基础知识执行一些不太容易实现的操作。 PHP一旦在服务器端生成,然后将结果提供给客户端。 (您的浏览器)。 如果您想动态更改HTML代码,请查看JavaScript。这将允许您在不重新加载页面的情况下进行动态更新。 (例如,用户在您的情况下按下按钮或计时器):



var i = 1;

// update site content every second
setInterval(function() {

  // get div with id example
  var myElement = document.getElementById('example');

  // count up by 1
  i++;

  // update content
  myElement.innerHTML = 'Zahl ' + i;

}, 1000);

<html>

<head>
  <meta charset="UTF-8">
  <title>JavaScript test</title>
</head>

<body>
  <div id="example">Zahl 1</div>
</body>

</html>
&#13;
&#13;
&#13;

现在,如果你想每秒运行一个PHP脚本,你需要一些名为AJAX的东西。因此,例如,如果您希望每秒运行 hello.php 并将其结果设置为您需要此代码之前的相同div:

&#13;
&#13;
var i = 1;

// update site content every second
setInterval(function() {

  // run function loadDoc every second
  loadDoc();

}, 1000);

function loadDoc() {
  var xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
    // get div with id example and update HTML
    document.getElementById("example").innerHTML = this.responseText;
  };
  xhttp.open("GET", "hello.php", true);
  xhttp.send();
}
&#13;
<html>

<head>
  <meta charset="UTF-8">
  <title>JavaScript test</title>
</head>

<body>
  <div id="example">Zahl 1</div>
</body>

</html>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

如果您希望每次都在浏览器中显示更新的变量,则必须重新加载客户端。您可以通过在PHP代码中更新变量后重定向到同一页面来执行此操作。

或者您可以在客户端使用Ajax,它会不断向服务器发送请求以获取变量的值,然后将其打印在浏览器中。