2010-02-22 69 views
0

我在存儲會話變量時,插入評論..調用user_message .. ,我想,當user_message,已被存儲,然後,顯示消息index.php index.php的是現在:如果isset..php/javascript的動作

<div id="message"> 
<? echo $_SESSION["user_message"]; ?> 
</div> 

但你需要刷新(F5)網站,看到該消息後的存儲..

,但我想,如果變量USER_MESSAGE已經得到了存儲的東西,然後顯示它..

希望喲你明白。

+0

你是如何保存評論的?阿賈克斯?顯示一些代碼。 – Fenton 2010-02-22 13:52:19

+0

這隻能通過使用JavaScript來解決。消息應該通過AJAX存儲,並且網站必須相應地更新。 – 2010-02-22 13:53:22

回答

0

我不確定我是否理解您的意圖 - 您是否想在用戶發送新評論後刷新用戶所在的頁面?

如果是這樣 - 如果您使用普通表單post/get,那麼您可以將用戶請求重定向到您想要的任何頁面,並使用上面寫的代碼@Seb顯示通知。

如果您使用ajax發送評論,您可以從ajax調用返回響應,通知創建頁面需要刷新的ajax調用的javascript函數,然後將location.href變量設置爲你想要什麼網址。

但是,如果您想刷新所有查看評論頁面的用戶的頁面,一旦其他用戶發送了評論,您將需要每隔幾秒/分鐘重複一次ajax調用,以檢查是否發生了某些變化在服務器中,如果是這樣,請使用location.href變量將用戶重定向到其他位置。 如果您僅依賴評論者計算機上保存的會話變量,則無法執行此操作,因爲只有在原評論者使用您的站點時纔可以訪問該變量。

0
<?php if(isset($_SESSION["user_message"])): ?> 
    <div id="message"> 
    <? echo $_SESSION["user_message"]; ?> 
    </div> 
<?php endif; ?> 
0

如果您希望郵件與評論表單顯示在同一頁面上,我推薦使用一些Javascript。如果你使用jQuery http://jquery.com/那麼你可以做類似的事情。

$('form#CommentFormID').submit(function() { 
    var message = $('form#CommentFormID textarea#comment').html(); 
    $('body').append('<div id="message">' + message + '</div'); 
}); 

還沒試過這個,但它應該可以正常工作。