PHP   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了PHP包含函数和AJAX div加载大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个PHP生成的网页,其中包含几个最初使用PHP include创建的div.

<div id ="siteLeft" class ="site">
    <div id="divGauges"><?PHP include('gauges.PHP');?></div>
    <div id="divHistory"><?PHP include('history.PHP');?></div>
</div>
<div id="siteRight" class ="site">
    <div id="divLymGauges"><?PHP include('gaugesLym.PHP');?></div>
    <div id="divLymHistory"><?PHP include('historyLym.PHP');?></div>
</div>

然后,使用单独的scripts.js文件中的AJAX调用,每10秒重新加载这些div:

function updateHistory(){
    $('#divHistory').load('history.PHP'+"?ms=" + new Date().getTime());
    $('#divLymHistory').load('historyLym.PHP'+"?ms=" + new Date().getTime());
}
setInterval( "updateHistory()", 10000 );

在history.PHP和historyLym.PHP中,我有一个函数调用,该函数位于另一个名为functions.PHP文件中.

如果我做:

include ('functions/functions.PHP');

在index.PHP页面中,然后在初始加载时div的显示效果很好,但是我得到了

Fatal error: Call to undefined function 

在AJAX调用之后,网页上显示内容会使用history.PHP和historyLym.PHP刷新div(显然,因为函数文件的include不在div中,这是唯一被调用的位).

因此,我尝试将functions.PHP包含项放入已加载的div中.如果我这样做,那么在初始页面加载时,我得到:

Fatal error: Cannot redeclare getForce()

这也很有意义,因为在初始加载时,两个div都包含functions.PHP的include.

仅将include放到一个div中会导致页面加载正常(应该这样做),但是在div的AJAX刷新上,我收到此错误

Fatal error: Call to undefined function getForce()

这又很有意义,因为两个div由AJAX独立刷新,因此只有具有include.functions.PHP的div才能使用该函数.

所以我的问题是:

我可以在哪里放置functions.PHP的include,以便div可以在初始页面加载时以及在单独的AJAX刷新时使用functions.PHP函数

解决方法:

首先将函数文件包含在index.PHP中,
然后将其添加到包含文件的顶部(例如:gauges.PHP,history.PHP等.)

<?PHP
  if ( !function_exists( "getForce" ) ) {
    // include the function file
  }
?>

您可以用函数文件中定义的任何其他函数名称替换getForce

大佬总结

以上是大佬教程为你收集整理的PHP包含函数和AJAX div加载全部内容,希望文章能够帮你解决PHP包含函数和AJAX div加载所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: