Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 刷新包含PHP代码的div,而不重新设计页面_Javascript_Php_Html_Refresh - Fatal编程技术网

Javascript 刷新包含PHP代码的div,而不重新设计页面

Javascript 刷新包含PHP代码的div,而不重新设计页面,javascript,php,html,refresh,Javascript,Php,Html,Refresh,我有一个php代码,它在一个div中。它显示一个随机文本放在random.txt文件中。我想刷新这个div,在不刷新整个页面的情况下,每隔15秒加载新文本。 我发现了几种不用刷新页面就可以重新加载div的解决方案,似乎可以用AJAX或JS来完成,但它们只使用特定内容或特定文件来刷新div,但是我不知道如何插入这段代码并刷新它 这就是我的div的样子: <div id="randomtext"> <?php include_once("GetRandomText.php");

我有一个php代码,它在一个div中。它显示一个随机文本放在random.txt文件中。我想刷新这个div,在不刷新整个页面的情况下,每隔15秒加载新文本。 我发现了几种不用刷新页面就可以重新加载div的解决方案,似乎可以用AJAX或JS来完成,但它们只使用特定内容或特定文件来刷新div,但是我不知道如何插入这段代码并刷新它

这就是我的div的样子:

<div id="randomtext"> 
<?php
include_once("GetRandomText.php");
$MPTextFile = "random.txt";
$MPSepString = "*divider*";
$MPTextToHTML = false;
MPPrintRandomText($MPTextFile, $MPSepString, $MPTextToHTML);
?>
</div>

每次刷新时,它都会向div加载一个随机文本

我试图用下面的JS刷新div-it,但它根本不起作用。对不起,我不擅长

<script>
var auto_refresh = setInterval(
function () {
var newcontent= '<?php
include_once("GetRandomText.php");
$MPTextFile = "random.txt";
$MPSepString = "*divider*";
$MPTextToHTML = false;
MPPrintRandomText($MPTextFile, $MPSepString, $MPTextToHTML);
?>';
$('#randomtext').html(newcontent);
}, 1000);
</script>

<div id="randomtext"></div>

var auto_refresh=setInterval(
函数(){
var newcontent='';
$('#randomtext').html(新内容);
}, 1000);

提前感谢。

据我所知,您试图在浏览器中执行PHP,这是不可能的。服务器解析PHP并用随机字符串替换该代码

您需要向服务器发送一个AJAX请求,服务器将评估此脚本并将其发送回客户端。以简化的方式:

request = new XMLHttpRequest();
request.open("GET", "my.php");
request.send();
$("#randomtext").html(request.response);

据我所知,您试图在浏览器中执行PHP,这是不可能的。服务器解析PHP并用随机字符串替换该代码

您需要向服务器发送一个AJAX请求,服务器将评估此脚本并将其发送回客户端。以简化的方式:

request = new XMLHttpRequest();
request.open("GET", "my.php");
request.send();
$("#randomtext").html(request.response);

PHP脚本和Javascript在不同的环境中执行。(分别是您的服务器和用户的浏览器。)

您需要做的是将嵌入的PHP脚本移动到一个单独的PHP文件中。使用这样的东西:

content.php

<?php
include_once("GetRandomText.php");
$MPTextFile = "random.txt";
$MPSepString = "*divider*";
$MPTextToHTML = false;
MPPrintRandomText($MPTextFile, $MPSepString, $MPTextToHTML);
?>

在html页面内

<script>
var auto_refresh = setInterval(
(function () {
    $("#randomtext").load("path/to/content.php"); //Load the content into the div
}), 1000);
</script>
<div id="randomtext"></div>

var auto_refresh=setInterval(
(功能(){
$(“#randomtext”).load(“path/to/content.php”);//将内容加载到div中
}), 1000);

jQuery加载函数的文档:

PHP脚本和Javascript在不同的环境中执行。(分别是您的服务器和用户的浏览器。)

您需要做的是将嵌入的PHP脚本移动到一个单独的PHP文件中。使用这样的东西:

content.php

<?php
include_once("GetRandomText.php");
$MPTextFile = "random.txt";
$MPSepString = "*divider*";
$MPTextToHTML = false;
MPPrintRandomText($MPTextFile, $MPSepString, $MPTextToHTML);
?>

在html页面内

<script>
var auto_refresh = setInterval(
(function () {
    $("#randomtext").load("path/to/content.php"); //Load the content into the div
}), 1000);
</script>
<div id="randomtext"></div>

var auto_refresh=setInterval(
(功能(){
$(“#randomtext”).load(“path/to/content.php”);//将内容加载到div中
}), 1000);

jQuery加载函数的文档:

如果我将PHP代码放入一个PHP文件并从javascript调用它会怎么样?它可以工作吗?我为它添加了一个示例调用,是的,这是可能的,从jquery调用php页面更容易,而不必刷新整个页面。@henje感谢独立php的想法,现在它工作起来就像一个符咒:)如果我将php代码放在php文件中并从javascript调用它呢?它能工作吗?我为它添加了一个示例调用,是的,这是可能的,从jquery调用php页面更容易,而不必刷新整个页面。@henje感谢独立php的想法,现在它工作起来就像一个符咒:)