php将页面加载到div中,java脚本不工作

php将页面加载到div中,java脚本不工作,php,javascript,ajax,Php,Javascript,Ajax,我使用ajax将页面加载到div中 页面加载正常 但是我不能运行php和javascript 在加载的页面中 在服务器中,我像这样加载页面 file_get_contents('../' . $PAGE_URL); 在浏览器中,我正在设置div的内容 使用 并为该div设置innerHTML 使用检索信息 但是当我得到新的内页 没有php或java脚本在工作 假设是这样的吗?我认为php不会工作,因为您处理它的方式只是文本。我建议使用类似于include('../.$PAGE\u URL)的东

我使用ajax将页面加载到div中 页面加载正常 但是我不能运行php和javascript 在加载的页面中

在服务器中,我像这样加载页面

file_get_contents('../' . $PAGE_URL);
在浏览器中,我正在设置div的内容 使用

并为该div设置innerHTML 使用检索信息 但是当我得到新的内页 没有php或java脚本在工作


假设是这样的吗?

我认为php不会工作,因为您处理它的方式只是文本。我建议使用类似于
include('../.$PAGE\u URL)的东西
应该解析php。
javascript问题可能与您正在div中加载
标记有关,我不确定这样做时会发生什么,但它不应该正常工作。尝试使用某种类型的
标记。

为了正确执行javascript,您必须等待浏览器完成加载页面

此事件名为
onload()
。您的代码应在此事件上执行

<?php
    $file = false;

    if(isset($_GET['load'] && is_string($_GET['load'])) {
        $tmp = stripclashes($_GET['load']);
        $tmp = str_replace(".","",$tmp);

        $file = $tmp . '.php';
    }

    if($file != false && file_exists($file) && is_readable($file)) {
        require_once $file;
    }

?>
现在,我相当确定其中的某些部分是不安全的,您可以有一个允许需求的白名单。理想情况下,它也应该在特定的目录中查找文件。老实说,我也不太确定是否要直接将responseText转储回DIV,因为XSS的安全性已经成熟。但这一天已经结束了,我还没有找到任何关于这一点的资料。请注意,如果不对此进行任何检查,用户可能会被引导到使用file\u get\u内容的第三方站点,这将是一件非常糟糕的事情。您可以在PHP中评估文件获取内容请求,该请求。。。很好,非常非常糟糕。例如尝试

<?php
     echo file_get_contents("http://www.google.com");
?>

但我恐怕我必须在这里问,你为什么要这样做?这似乎是实现超链接的一种非常迂回的方式


这是AJAX吗?

我删除了所有html和正文标记,并在我的服务器中添加了围绕所有内容的框架。我将“include”方法放在“file\u get\u contents”之前,但现在我根本看不到页面。不要使用
file\u get\u contents
只需使用
include
。但是为什么不使用
iframe
?使用javascript添加元素,然后将其源代码设置为所需的任何文件。除非出于某种原因您需要从服务器调用该页面,否则这将正常工作。我在包含我的文件[Thu Aug 05 15:21:24 2010][error][client 10.0.0.2]

未扩展的输出时遇到问题:\r\n\r\n\r\nphp在尝试包含我的页面时给我一个错误:[Thu Aug 05 15:38:01 2010][error][client 10.0.0.2]

未扩展的输出:\r\n\r\n\r\n\r\n\r\n为什么不编辑您的问题并添加您尝试的代码和错误。我在左侧有一个菜单,而不是加载包含菜单的完整html,我只请求替换content div,使用ajax,我可以像getPageContent(&$response)这样做{$PAGE_URL=$\u POST['PAGE_URL'];ob_start();require_once('../.$PAGE_URL);$contents=ob_get_contents();ob_end_clean();$response->fields->frame_main=$contents;}但我必须将我的javascript与主页分开,有什么办法避免这种情况吗?
target = document.getElementById('page');    
target.innerHTML = response.responseText;
<?php
     echo file_get_contents("http://www.google.com");
?>