2013-06-19 25 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