我看这个教程 http://tutorialzine.com/2009/09/simple-ajax-website-jquery/ 但我不明白如何使用php文件与sql,echo“”;等等 如果有人可以解释,我会尝试一切,什么也没有出现 谢谢:))
var default_content = "";
$(document).ready(function () {
checkURL();
$('ul li a').click(function (e) {
checkURL(this.hash);
});
//filling in the default content
default_content = $('#pagesContent').html();
setInterval("checkURL()", 250);
});
var lasturl = "";
function checkURL(hash) {
if (!hash) hash = window.location.hash;
if (hash != lasturl) {
lasturl = hash;
// FIX - if we've used the history buttons to return to the homepage,
// fill the pageContent with the default_content
if (hash == "")
$('#pagesContent').html(default_content);
else
loadPage(hash);
}
}
function loadPage(url) {
url = url.replace('#page', '');
$('#loading').css('visibility', 'visible');
$.ajax({
type: "POST",
url: "load_page.php",
data: 'page=' + url,
dataType: "html",
success: function (data) {
if (parseInt(data) != 0) {
$('#pagesContent').html(data);
$('#loading').css('visibility', 'hidden');
}
}
});
}
load_page.php
<?php
if(!$_POST['page']) die("0");
$page = (int)$_POST['page'];
if(file_exists('pages/page_'.$page.'.php'))
echo file_get_contents('pages/page_'.$page.'.php');
else echo 'There is no such page!';
?>
demo.html
< a href="#page1">Page1< /a>
< a href="#page2">Page2< /a>
< a href="#page3">Page3< /a>
< a href="#page4">Page4< /a>
<div id="pageContent">
//loaded ajax page
</div>
在这种情况下,链接&gt; index.html#page1将加载文件'pages / page_1.php' 但在主index.html中只能加载HTML代码,而不是PHP语法。 在这种情况下我可以使用php命令吗?
答案 0 :(得分:0)
所以看起来这里的问题是在教程示例中,他们只是使用HTML文件。为此,file_get_contents()
将正常工作。但是,如果您希望服务器在将PHP代码提供给用户之前解析它,则应使用include()
function。
include语句包含并评估指定的文件。
file_get_contents()函数的行为完全不同:
file_get_contents
- 将整个文件读入字符串
它只是读取文件的内容,不会评估/执行/解释PHP代码......