刷新包含php include的div

刷新包含php include的div,php,javascript,html,load,Php,Javascript,Html,Load,我有一个php代码,它在页面加载和刷新时显示一个随机文件。 此代码位于../ads/food/response.php中,您将在下面的另一个脚本中看到 <?php $ad = glob("../ads/food/*.php"); $adfood = $ad[mt_rand(0, count($ad) -1)]; include ($adfood); ?> 我想在不刷新页面的情况下旋转显示的文件。 (“就像图像滑块一样”) 我所尝试的: 我尝试了一个脚本来刷新div,但它似乎显示

我有一个php代码,它在页面加载和刷新时显示一个随机文件。 此代码位于../ads/food/response.php中,您将在下面的另一个脚本中看到

<?php
$ad = glob("../ads/food/*.php");
$adfood = $ad[mt_rand(0, count($ad) -1)];
include ($adfood);
?>

我想在不刷新页面的情况下旋转显示的文件。 (“就像图像滑块一样”)

我所尝试的:

我尝试了一个脚本来刷新div,但它似乎显示了一个警告,而不是文件。您可以在这里看到错误


$(文档).ready(函数(){
setInterval(函数()
{
$(“#按钮”).fadeOut(“快”).load(“../ads/food/response.php”).fadeIn(“慢”);
}, 10000);
});

这只是因为路径
(“./ads/food/*.php”)
没有指向包含任何php的文件夹(即:
http://whatanswered.com/ads/ads/food


您必须编写路径
。/../ads/food/*.php
这将导致
http://whatanswered.com/ads/food/
(其中包含一些php文件)

我不确定这是否有帮助,但这里有一些替代方法,您可以这样做:

  • 使用iframes of sort链接到将自动刷新并生成新页面的页面
  • 使用Ajax将另一个页面嵌入到站点中

这里有一些嵌入站点的参考。

您有几个问题

  • 您的response.php文件已在
    ads/food/
    目录中。正如@edi9999已经提到的,您的路径应该是
    。/../ads/food/*.php
    ,或者您可以使用
    *.php
  • 您的随机文件选择器偶尔会返回response.php。这可能不会导致任何实际问题,因为response.php将只是递归地调用自己。但如果您的文件列表很短,那么它可能会反复出现
  • 如果目录非常大(1000多个项目),则可能会出现内存问题 您可以使用此代码排除response.php文件。另外,还有一个
    array\u rand()
    函数专门用于从数组中选择单个项

    $ad = glob("*.php");
    $ad = array_filter($ad, function($name) {
        return preg_match('/response.php$/', $name) === 0 ;
    }); 
    include( $ad[array_rand($ad)] );
    

    你确定相对路径是正确的吗?再看一眼,你是说你想显示图像,但在glob中你有*.php?php文件中有横幅代码php include工作得很好,它只是不会重新加载它。
    $ad = glob("*.php");
    $ad = array_filter($ad, function($name) {
        return preg_match('/response.php$/', $name) === 0 ;
    }); 
    include( $ad[array_rand($ad)] );