2013-06-19 23 views
1

所以我有一个问题,我从来没有这样做过。如何制作永久链接的动态PHP网站?

I have this website http://82.196.14.71/obrigatorionaover/ . 

我想要生成ajax网页,但我也想永久链接浏览器历史。

这是第一页(releituras.php)的身体:

<body> 
<?php 
    $path = $_SERVER['DOCUMENT_ROOT']; 
    $path .= "/obrigatorionaover/php/nav.php"; 
    include_once($path); 
?> 


<div id="float"> 
//this is a connect 
<?php 
    $path = $_SERVER['DOCUMENT_ROOT']; 
    $path .= "/obrigatorionaover/xxxxxxxxxxxx.php"; 
    include_once($path); 
?> 

<?php 
    try { 
    $stmt = $db->query('SELECT * FROM sessoes ORDER BY id DESC'); 
    while($row = $stmt->fetch(PDO::FETCH_ASSOC)) { 
    echo '<div style="background-image:url('."http://localhost:8888/obrigatorionaover/".$row["img"].')" class="rect sessao" id=sessao'.$row["id"].'>'.'<h3 class="titulo">'.$row["numero_sessao"].'</h3>'.'<p class="descricao">'.$row["descricao"].'</p>'.'</div>'; 
    } 
    } catch(PDOException $ex) { 
    echo "An Error occured!"; //user friendly message 
    } 
?> 

</div> 
<script src="/obrigatorionaover/js/script.js"></script> 
</body> 

我打扫DIV浮动和插入新内容动态这个样子,(sessao.php类似于从releituras查询。 php)

function sessao(data){ 
$("#float").html(""); 
$.get("/obrigatorionaover/php/sessao.php?id=1").done(function(data) { 
    $("#float").append(data); 
}); 
} 

浏览器中的网址没有变化,可以动态改变网址而不改变内容?

浏览器历史记录也不会改变(我知道我可以注入它,但我没有有效的物理php页面)。我如何注入它?我应该在向数据库中插入信息时自动创建物理php页面吗?

我可以有类似虚拟PHP页面的东西吗?如果是的话该怎么办?

回答

0

你需要什么 - 将HTML锚定与ajax导航一起使用。
当您使用ajax加载某些内容时,请修改锚点。这不会重新加载页面,但会给你真正新的window.location
当页面没有ajax加载时,解析该锚点(如果存在)以确定要显示哪个ajax页面。
这是基本的想法,你的想法的方向,因为我不知道你的项目实施的细节。

Loading with AJAX and going to anchor in loaded content

+0

这是一个学术项目。我定义了我想如何执行这个实现,所以我正在寻找好的做法:)。 我有一个问题,当我使用, 'document.location =“php/sessao.php?id = 1”;' 突然只有sessao.php内容被加载,我失去了其余的信息(头,导航...)。我想要这样的直接链接,但将sessao.php的代码加载到releituras.php。 – henriqesilva