Javascript 使用Ajax需要不同的php页面
我想使用jqueryajax通过需要不同的php文件来更改div元素的内容 以下是ajax代码:Javascript 使用Ajax需要不同的php页面,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,我想使用jqueryajax通过需要不同的php文件来更改div元素的内容 以下是ajax代码: $.ajax({ url:"/project/Functions/project_functions.php", type:"POST", data:{ functions:num }, success:function(result){ $("#right_
$.ajax({
url:"/project/Functions/project_functions.php",
type:"POST",
data:{
functions:num
},
success:function(result){
$("#right_bot").html(result);
}
});
project_functions.php类似于:
$result = '<?php require "Panels/Project/Main/main.php" ?>';
echo $result;
$result='';
回声$结果;
我可以看到输出的值,但是html注释忽略了php部分
<!--?php require "Panels/Project/Main/main.php" ?-->
它只是注释了php。有没有办法将不同的php文件加载到我的div中
在main.php文件中,它包含php代码、html代码和一些样式标记。我可以使用ajax将所有这些加载到div元素中吗?或者我必须回显所有html代码?试试:
$result=file_get_contents('Panels/Project/Main/Main.php') 你不能这样做。您想要的是在服务器上执行所有PHP,并且只返回结果 您不能将php代码发送回javascript并尝试在那里运行,php是一种服务器端语言,它只能在服务器上工作。Javascript是客户端,它将只在浏览器中运行。
如果您将
发送回Javascript的位置,您将得到确切的结果,而不是123
在您的例子中,解决方案是使project\u函数。php真正需要它。这将包括main.php及其所有函数和输出
require "Panels/Project/Main/main.php";
一些代表团建议如下:
一个可能对您有所帮助的技巧:将链接粘贴到您的urlbar,并向其中添加变量。您在屏幕中得到的结果是Javascript将输出的内容。注意:这只适用于method=get,而不适用于post
在本例中,请浏览到
/project/Functions/project\u Functions.php
,并根据上面的代码执行简单的require。该输出将被发送到Javascript。在ajax请求中发送一个参数(例如类型):
然后在php文件中获取类型变量:
您还应该具有某种相同的函数名或输出文件结果的内容
<?php
function printResult() { }
echo printResult();
检查web inspector中的“网络”选项卡时,当您请求/project/Functions/project\u Functions.php
时会返回什么?我使用DeModule查看生成的代码。在#right_bot div中,它注释掉/project/Functions/project_Functions.php?抛开变量赋值和echo,只需让
注释掉所有的代码等等,你真的想在你的div中显示原始的php代码,例如显示php标记等,还是想显示代码的输出,但这并不能解决实际的问题?我在main.php中有html代码和php代码,我想把它们都复制到我的div中。这是可能的还是一个糟糕的设计糟糕,非常糟糕,他!main.php中的代码看起来如何?它有什么作用?实际上这是一个简单的问题。这只是一个if-statement.main.php的内容在当前情况下并不重要。main永远不会以正确的方式包含,这就是问题atm:)-您应该调用require来包含文件的内容,但是从该文件输出任何内容都需要echo或print语句;在project_functions.php中。如何使main.php中的所有内容都进入我的div
if($type == "main") {
require "Panels/Project/Main/main.php"
}
else {
require "Panels/Project/Main/sthelse.php"
}
<?php
function printResult() { }
echo printResult();