Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用jQuery的'load()‘加载带有内部PHP include函数的外部PHP文件

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

Stack Overflow用户
提问于 2013-04-02 16:12:32
回答 2查看 7K关注 0票数 1

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

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!-- ####### NEWS ####### -->

<div id="news">
    <h2>NEWS</h2>

    <div>
        <a id="showoldnews" href="#news">OLDER</a>
    </div>

    <?php $directory = "assets/news/"; if (glob($directory . "*.php") != false) { $newscount = count(glob($directory . "*.php")); } else {} ?>

    <?php include('assets/news/news' . $newscount . '.php'); ?>

    <!-- ####### OLDER NEWS ####### -->

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

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

“旧新闻”部分最初是隐藏的,并且仅通过jQuery触发器可见:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// Show old NEWS
$('a#showoldnews').click(function () {
    $('#oldnews').show(400);
});

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

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

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

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?php
    $directory = "assets/news/";
    if (glob($directory . "*.php") != false) {
        $newscount = count(glob($directory . "*.php"));
    }
    else {
    }
?>
<?php
    include('assets/news/news' . $newscount . '.php');
?>

这种方法可以接受吗?我试过了,但是根本不起作用(我可以用load()函数加载静态内容,但是我不能让服务器处理PHP脚本。我不知道是否有可能让服务器处理PHP代码,因为PHP处理是在网站开始加载之前在服务器端完成的。但事实并非如此。

更新#1

我有以下内容从服务器加载'load.php‘文件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script type="text/javascript">
    $('#oldnews').load('load.php');
</script>

load.php文件的内容为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<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块似乎根本不会被处理……

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-04-02 16:37:43

PHP 可以在jQuery抓取内容之前运行...这是我设置和测试的.

test.html

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!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>

go.php

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?php
    echo 'Hi';
?>

结果是#feeds .innerHTML是"Hi"..。我想要更多的信息/代码来复制这种情况。看一眼the jQuery load API documentation可能会有所帮助。

票数 2
EN

Stack Overflow用户

发布于 2017-06-30 10:58:48

正如@joseph告诉我的那样,它是正确的,并对我有所帮助,但在mycase中,我想隐藏外部Php文件的内容,

下面是我的代码修改,这对我很有帮助!

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!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文件有数据库连接,所以我不得不把它隐藏起来,db.php

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?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>";


?>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15768995

复制
相关文章
include用法PHP,php之include的使用[通俗易懂]
在 PHP 中,您能够在服务器执行 PHP 文件之前把该文件插入另一个 PHP 文件中。
全栈程序员站长
2022/07/29
2.6K0
include用法PHP,php之include的使用[通俗易懂]
PHP feof() 函数读文件的使用
如果服务器没有关闭由 fsockopen() 所打开的连接,feof() 会一直等待直到超时而返回TRUE。默认的超时限制是 60 秒,可以使用 stream_set_timeout() 来改变这个值。
Java架构师必看
2021/03/22
9250
PHP使用ArrayAccess实现配置文件的加载
提供像访问数组一样访问对象的能力的接口。 新建configs目录 新建contorller.php配置文件
友儿
2022/09/11
6000
php文件加载技术+php函数一部分
核心就是在当前1.php文件中通过一个函数把另一个文件2.php里面的代码在当前有那一个函数的文件1.php里面中执行。慢慢理解哈。 问题;那一个函数那么的神奇,到底是什么牛逼函数啊? 听我简短到来! 记住,写两个页面第一个1.php 第二个2.php
贵哥的编程之路
2020/10/28
9540
php文件加载技术+php函数一部分
PHP中的include和require
include() 函数可获得指定文件中的所有文本,并把文本拷贝到使用 include 函数的文件中。include语法:
用户7657330
2020/08/14
7600
php://input allow_url_include,DVWA设置PHP函数allow_url_include:已禁用
Click on the ‘Create / Reset Database’ button below to create or reset your database.
全栈程序员站长
2022/09/13
1.1K0
延迟加载图片的jQuery插件-Lazy Load Plugin for JQuery
Lazy Load是一个用Javascript写得jQuery插件。它可以使一个长网页中,不在当前视图中的图片延迟加载,以提高页面的载入速度。
EltonZheng
2021/01/26
3.7K0
php://input allow_url_include,php allow_url_include的应用和解释_PHP教程
因为这个原因,许多安全研究人员建议在php.ini配置中禁用指向allow_url_fopen。不幸的是,许多推荐这种方法的人,并没有意识到,这样会破坏很多的应用并且并不能保证100%的解决remote URL includes以及他带来的不安全性。
全栈程序员站长
2022/09/13
7130
php ffi是什么?,什么是PHP外部函数接口?
许多开发人员在PHP中使用外部函数接口。在这里,我们介绍了它是什么以及如何使用它。
高久峰
2023/06/20
4690
延迟加载图片的 jQuery 插件:Lazy Load
网站的速度非常重要,现在有很多网站优化的工具,如 Google 的 Page Speed,Yahoo 的 YSlow,对于网页图片,Yahoo 还提供 Smush.it 这个工具对图片进行批量压缩,但是对于图片非常多的网站,载入网页还是需要比较长的时间,这个时候我们可以使用 Lazy Load 这个 jQuery 插件来延迟加载图片。
Denis
2023/04/15
1.9K0
php 加载页面时间函数
/** * 加载时间 * @return bool */ function timer_start() { global $timestart; $mtime = explode( ' ', microtime() ); $timestart = $mtime[1] + $mtime[0]; return true; } timer_start(); function timer_stop( $display = 0, $precision = 3 ) { global $timestart, $timee
九霄道长
2021/03/02
3.6K0
内部函数与外部函数
函数是c语言程序中的最小单位,往往把一个函数或多个函数保存为一个文件,这个文件称为源文件。定义一个函数,这个函数就要被另外的函数所调用。但当一个源程序由多个源文件组成时,可以指定函数不能被其他文件调用,这样C语出又把函数分为两类:一个是内部函数,另一个是外部函数。
pigeon
2022/04/11
9820
PHP版的jQuery
个人认为,对于Web前端程序员和跟HTML和CSS打交道的人来说,jQuery是有史以来最伟大的发明。jQuery的出现使Web程序员的开发效率突飞猛进,不亚于工业革命给人类生产力带来的提升。 但问题在在于,只有前端程序员可以利用jQuery的强力,他们可以用它分析HTML,根据CCS类,HTML属性,CSS规则等各种选择器来查 询、获取、操作HTML里的任何一个元素。而作为后端(服务端)程序员来说,他们同样需要分析HTML内容,从HTML中提取符合要求的HTML片段、获 取某个符合条件的属性值等。 遇到这
wangxl
2018/03/08
1.3K0
PHP 文件相关函数
本文介绍了 PHP 文件的相关函数。本文只是部分列举,详情请查看官方文档。 官方文档:http://php.net/manual/zh/book.dir.php 官方文档:http://php.net/manual/zh/book.filesystem.php 执行命令所在路径 getcwd() 文件所在路径 __FILE__ 文件所在目录路径 新的 __DIR__ 旧的 dirname(__FILE__) 目录相关函数 resource opendir ( string $path [, resource
康怀帅
2018/02/28
1.4K0
7.6 内部函数和外部函数
2、对变量而言,声明与定义的关系稍微复杂一些。在声明部分出现的变量有两种情况:一种是需要建立存储空间的,另一种是不需要建立存储空间的。前者称为定义性声明,简称定义;后者称为引用性声明。
小林C语言
2019/07/12
1.1K0
【说站】PHP内部函数是什么
(2)在函数内部可以调用内部函数, 但是必须在内部函数定义之后调用,因为PHP解析器只会加载外部函数并不会执行外部函数,所以不知道外部函数中还有内部函数。
很酷的站长
2022/11/23
6020
6.8 内部函数和外部函数
解释:只能被本文件中其他函数所调用,在定义内部函数时,在函数名和函数类型的前面加static,所以内部函数又称静态函数
小林C语言
2019/08/19
7510
点击加载更多

相似问题

PHP include和jQuery .load()

21

jQuery:使用.load加载php文件

10

使用jquery加载外部php文件?

30

使用php外部加载带有javascript的文件

13

加载/包含内容的最佳方式?(jQuery的load()与PHP的include())

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文