使用jQuery';加载带有内部PHP include函数的外部PHP文件;s';加载()';

使用jQuery';加载带有内部PHP include函数的外部PHP文件;s';加载()';,php,jquery,jquery-load,Php,Jquery,Jquery Load,我有一个网站正在开发中,有一个“新闻”部分和一个“老新闻”部分。新闻单独存储在服务器通过PHP加载的外部文件中(服务器统计PHP文件的数量,并在“新闻”部分显示最后一个文件(当前新闻),在“旧新闻”部分显示所有其他文件: 但我期待着长期的问题:因为所有的新闻都是首先加载的,这意味着随着越来越多的新闻出现,网站的加载速度会变慢。即使它是“可接受的”,它仍然不是理想的解决方案 我正在考虑使用jQuery.load()加载一个外部PHP文件,然后只有在用户请求时才加载旧新闻 问题是,我不知道在用户单击

我有一个网站正在开发中,有一个“新闻”部分和一个“老新闻”部分。新闻单独存储在服务器通过PHP加载的外部文件中(服务器统计PHP文件的数量,并在“新闻”部分显示最后一个文件(当前新闻),在“旧新闻”部分显示所有其他文件:

但我期待着长期的问题:因为所有的新闻都是首先加载的,这意味着随着越来越多的新闻出现,网站的加载速度会变慢。即使它是“可接受的”,它仍然不是理想的解决方案

我正在考虑使用
jQuery.load()
加载一个外部PHP文件,然后只有在用户请求时才加载旧新闻

问题是,我不知道在用户单击链接后是否可以使用
jQuery.load()
加载以下脚本:

<?php
    $directory = "assets/news/";
    if (glob($directory . "*.php") != false) {
        $newscount = count(glob($directory . "*.php"));
    }
    else {
    }
?>
<?php
    include('assets/news/news' . $newscount . '.php');
?>
load.php文件的内容是:

<div class="section" id="oldnews">
    <h2>OLDER NEWS</h2>

    <div class="topLink">
        <a href="#">TOP</a>
    </div>

    <div class="topLink2">
        <a id="hideoldnews" href="#news">HIDE</a>
    </div>

    <?php
        $newscount = $newscount-1;
        while ($newscount>0) {
            include('assets/news/news' . $newscount .'.php');
            --$newscount;
        }
    ?>
</div>

老消息
“TOP”和“HIDE”链接看起来没有任何问题。但是,PHP块似乎根本没有被处理…

PHP可以在jQuery获取内容之前运行…下面是我设置和测试的内容

test.html

共找到45条线索。
$(“#feeds”).load(“go.php”);
go.php


结果是,
#feeds
.innerHTML
是“你好”…我希望在复制这种情况时有更多的信息/代码。这可能有助于了解一下。

正如@joseph告诉我的正确答案并帮助了我,但在我的情况下,我想隐藏外部Php文件的内容,
下面是帮助我的代码更改

<!DOCTYPE HTML>
<html>
    <head>
        <script type="text/JavaScript" src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
    </head>

    <body>
    <b>Db file result</b>
        <div id="feeds" hidden=""></div>
        <script type="text/JavaScript">
            $("#feeds").load("db.php");
        </script>
    </body>
</html>

数据库文件结果
$(“#feeds”).load(“db.php”);
我的Php文件有数据库连接,所以我不得不隐藏它, db.php


如果您要求您的服务器提供数据服务,那么它如何提供数据并不重要。简短回答,是的,它应该可以工作,长回答,只要确保您的语法正确。如果$.load()不工作,请尝试使用类似$.AJAX()或$.post()的AJAX函数请记住,对服务器的每次回调都是它自己的过程,这意味着处理调用的PHP脚本必须执行与您的请求相关的所有必要的包含操作。谢谢。不知何故,它对PHP包含函数不起作用。我已更新了原始帖子。@BMM您将“$newscont”设置在哪里你的load.php文件中的php变量?亲爱的Joseph。我刚刚弄明白!它以前声明过,但似乎我需要在外部php文件中声明它…这是有效的。感谢你的帮助,我相信现在一切都应该正常了…只需一些测试…@BMM很高兴听到它有效…如果所有测试都顺利,介意接受我的答案吗n?如果遇到任何问题,请告诉我:)现在问题不同了。。。因为我使用的是Cufón字体,所以Cufón引擎不应用于此外部文件的内容。。。我需要一种方法来强制重新加载Cufón。但我想我在什么地方读过关于如何做到这一点的书。谢谢
<script type="text/javascript">
    $('#oldnews').load('load.php');
</script>
<div class="section" id="oldnews">
    <h2>OLDER NEWS</h2>

    <div class="topLink">
        <a href="#">TOP</a>
    </div>

    <div class="topLink2">
        <a id="hideoldnews" href="#news">HIDE</a>
    </div>

    <?php
        $newscount = $newscount-1;
        while ($newscount>0) {
            include('assets/news/news' . $newscount .'.php');
            --$newscount;
        }
    ?>
</div>
<!DOCTYPE HTML>
<html>
    <head>
        <script type="text/JavaScript" src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
    </head>

    <body>
        <div id="feeds"><b>45</b> feeds found.</div>
        <script type="text/JavaScript">
            $("#feeds").load("go.php");
        </script>
    </body>
</html>
<?php
    echo 'Hi';
?>
<!DOCTYPE HTML>
<html>
    <head>
        <script type="text/JavaScript" src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
    </head>

    <body>
    <b>Db file result</b>
        <div id="feeds" hidden=""></div>
        <script type="text/JavaScript">
            $("#feeds").load("db.php");
        </script>
    </body>
</html>
<?php

session_start();

$db = pg_connect("host=ec2-xxx-x0-xxx-xx.compute-1.amazonaws.com port=5432 dbname=dxxxxxxxxx user=vxxxxxxxxxx password=1xxxxxxxxxxxxxxxxxxxxxxxxxxxxd");
 pg_select($db, 'post_log', $_POST);


 $query=pg_query("(SELECT id,name, FROM organization WHERE is_active = 'true' AND account_token = '".$_SESSION['account_token']."');


 $json=array();
while ($student = pg_fetch_array($query)) {
    $json[$student["is_user"]."-".$student["id"]] = $student["name"]."-".$student['pan'];
}

$textval = json_encode($json);
$foo = "var peoplenames=" . $textval;

file_put_contents('autocomplete-Files/'.$_SESSION['account_token'].'.js', $foo);

echo "<script>location='filename.php'</script>";


?>